The Old New Thing

When you transfer control across stack frames, all the frames in between need to be in on the joke

Chris Hill suggests discussing the use of structured exception handling as it relates to the window manager, and specifically the implications for applications which raise exceptions from a callback. If you plan on raising an exception and handling it in a function higher up the stack, all the stack frames in between need to be be in on ...
Comments are closed.0 0
Code

The case of the asynchronous copy and delete

A customer reported some strange behavior in the Copy­File and Delete­File functions. They were able to reduce the problem to a simple test program, which went like this (pseudocode): // assume "a" is a large file, say, 1MB. while (true) { // Try twice to copy the file if (!CopyFile("a", "b", FALSE)) { Sleep(1000); if (!...

You can't rule out a total breakdown of normal functioning, because a total breakdown of normal functioning could manifest itself as anything

A customer was attempting to study a problem that their analysis traced back to the malloc function returning NULL. Is it a valid conclusion that there is no heap corruption? While heap corruption may not be the avenue of investigation you'd first pursue, you can't rule it out. In the presence of a total breakdown of normal functioning, ...
Comments are closed.0 0
Code

How did the X-Mouse setting come to be?

Commenter HiTechHiTouch wants to know whether the "X-Mouse" feature went through the "every request starts at −100 points filter", and if so, how did it manage to gain 99 points? The X-Mouse feature is ancient and long predates the "−100 points" rule. It was added back in the days when a developer could add a random rogue ...

Why don't the shortcuts I put in the CSIDL_COMMON_FAVORITES folder show up in the Favorites menu?

A customer created some shortcuts in the CSIDL_COMMON_FAVORITES folder, expecting them to appear in the Favorites menu for all users. Instead, they appeared in the Favorites menu for no users. Why isn't CSIDL_COMMON_FAVORITES working? The CSIDL_COMMON_FAVORITES value was added at the same time as the other CSIDL_COMMON_* values, and its name ...