Wednesday, March 22, 2006

Thanks Microsoft!

Thank you Microsoft for this now freely available bug fix to the bug, described in KB319740.

This is one of those bugs, and one that has bugged me for a long, long time. I use a mail and news product called Turnpike. It has many advantages over OE but I'll leave the Turnpike evangelism to another day! This bug first cropped up during the beta of XP, but I never managed to work out what it was until after XP's RTM. At that time, I was running my laptop on Windows Server (as I was writing for the Windows Server Resource Kit team around that time) so the bug really did not affect me till after RTM. There was a patch raised, and the fix went into SP1 - and all was well. But for reasons never very clear, this bug re-surfaced in SP2. I want to say it was a regression, but it could well have been a bug that developed when fixing the orignal bug. Whatever the cause, it was in SP2 RTM.

The basic bug is that when using XP's theme service certain MFC applications leaked handles when child windows are created. This was a bug that could have easily been demonstrated by just testing the MFC samples as part of testing the OS SPs. The problem with this bug for me was its impact on Turnpike's Connect.exe. Connect.exe is the 'service' that sends and recivies and files mail and news. Connect works by creating a child window for each connection to a mail or news server (to allow you to see the details of the connection on screen if you want). Of course, most of the time, the windows stay unopened - but their creation and termination caused a handle leak that eventually required a reboot. If you stopped connect before all the handles were leaked, or just turned the theme service off, all was well. But the regular reboots were a real pain.

Eventually a post SP2 patch was created, but getting it was neigh on impossible Long time readers of Demon's Turnpike support newsgroup will know just how painful getting this was. I've posted in this blog my trials and tribulations over this bug. But a few weeks ago, I was at a round table at MS who were looking for examples of how to do a better job support wise. At that meeting, and in several long and detailed emails, I spelled out how bad this bug made MS look. Why did a bug regress? Why aren't MFC samples tested for OS Compatibility? WHy was there a regression into SP2? Why was a bug in RTM, fixed in SP1, not explicity tested for regression? Etc.

After the many mails, MS has finally posted this fix for free download. Yeah, you have to do the Real Advantage thing, but on this occasion, it would seem churlish to complain. Thanks to Phil Cross and Kristin Thomas at MS for getting this patch out there.

No comments: