I'm a little unclear as to how open source projects get worked on.
This was actually a good example to help describe this.
When the plea came for miners to downgrade to v0.7, those pools (and large solo miners) who had already solved the six or so blocks on v0.8 (v0.8 was ahead by about six blocks at that point) had the option of continuing on v0.8 instead of abandoning those blocks (and the bitcoins they would earn) when downgrading to v0.7. Let's say these miners held their ground in order to try and keep the bitcoins from those six blocks.
It would soon be apparent that the plea was being ignored by enough miners and that there was still plenty of hashing on v0.8 such that it would take a long time for v0.7 to catch up. So instead it would then be those mining on v0.7 that would be faced with a decision:
- a.) Do nothing and continuing to mine against a fork in which every block stays orphaned
- b.) Upgrade to v0.8 (which could take hours or days to complete)
- or c.) Implement a fix and start mining using it.
If the BDB issue was fixable, there would likely have been a bunch of frantic development and testing performed and code slipstreamed into production. (i.e., option "c.)" would have been chosen)
So if there was a fix, that code would have been running by pools and large solo miners before there was even an release published. Source code containing the patch can be transferred via a pastebin/gist/text file/e-mail attachment in most instances. It wouldn't be forced on them, but when choices are limited, the path of least resistance is often chosen. Fixing v0.7.x (again, if it was fixable in a reasonable amount of time) might have been the outcome instead.
Eventually releases with the fix would be published through the more formal process (built and tested prior to release, etc.) so that even those who don't build directly from the source code themselves can switch over and resume mining on the longest chain.
This process isn't uncommon. There have been vulnerabilities where the developers share the remedy with pool operators, large miners and others before sharing the fix publicly. So building from source code is something most pools and large miners are prepared to deal with.