There are also a number of unneeded whitespace changes that make the patch larger than it should be.
Yes, I tried to make some functions I had to alter a bit more readable. What about running a pretty printer, for example astyle (http://astyle.sourceforge.net/) on the whole code (or at least the shell32 directory) ? Some sections are currently indented with 2, some with 4 and some with 8 spaces - even mixed in the same function.
This was no joke. If you say, you would accept such as reformating patch, I can easyly create one that eliminates all tab-characters, and generates nice and uniform indented code. This will make it a bit easier to create the small self-contained patches you want to see instead of the big one. As additional bonus you will get a very better formated shell32 code base.
Regards
Martin