I'm removing part of the comment because it no longer applies. We're not just using the XP behavior for everything anymore, now we're using the 9x behavior when it's appropriate.
When is it appropriate, and when not? I don't know, and your patch doesn't explain that. See below for more on why it's confusing.
if (osver.dwMajorVersion >= 5 || osver.dwPlatformId == VER_PLATFORM_WIN32_NT) would be equivalent. The stuff in that block is only for NT/2k+. In 9x more we *don't* do that.
Let me say it again: the condition you've written doesn't return TRUE when running NT4 mode. Why is that, and what's that got to do with Win9x? If this wasn't intended, then your check if wrong. If it was, then the commit message is wrong. In either case, something is wrong with your patch as it is. --Juan