Pierre le Riche has done top-notch work identifying a memory overwrite bug in the Delphi 2005 IDE. One of the things which impresses me most about Pierre’s work on this issue is that he didn’t stop after he thought he had pinned it down as a "rogue MM" but rather kept going until he had definitively identified the real overwrite issue.
You can read the QC report — and especially Allen Bauer’s comments on it — if you want to know the technical details.
What’s more, Pierre has produced a freely available memory manager which appears to be very good — maybe even better than any other replacement MM for Delphi. That’s also fantastic.
Some people have asserted — even before Pierre definitively identified the cause of the bug — that Borland should release a service pack for Delphi in order to fix this single issue. I think this would be misguided and a disservice to Delphi users. Here is why:
Service packs cost time and money and should only be done when users benefit proprotionally, because wasting resources on a service pack to fix a minor problem means that larger issues may remain unaddressed. To assert that Borland should release a SP 4 for this issue alone and at this time, therefore, is to assert that Borland should squander their time and budget on something which might not fix the problems that people are having with SP 3. That doesn’t sound like a good idea to me.
Since Pierre has placed an unofficial fix in the attachments group, I’d suggest that folks who are having stability issues try it out and see if it fixes the problems. If it turns out to do this, then we can assert that Borland should release an official fix.
Update: I changed the link to Pierre’s patch to his next version in light of his comments regarding it.
Post a Comment