minor regression testing patch

Paul Millar paulm at astro.gla.ac.uk
Tue Apr 23 14:19:48 CDT 2002


Hi Geoff,

On Tue, 23 Apr 2002, Geoffrey Hausheer wrote:
[...]
> > #define WIN98_PLUS(version) \
> >   ( (version.dwPlatformId == VER_PLATFORM_WIN32_WINDOWS) && \
> >     ( (version.dwMajorVersion > 4) || \
> >       (version.dwMajorVersion==4 && version.dwMinorVersion>0)))
> >
> > Is this more correct?
> 
> I don't think so.  If you look at my test, you'll see that I explicitly check 
> for WIN98+ OR Win2k+ (that is, for some functions, the only valid operating 
> systems are Win2k, Winxp, win98, and winme.  The code above would allow nt4.0 
> in there too.
> The following link is how I defined the macros:
> http://msdn.microsoft.com/library/en-us/sysinfo/sysinfo_3a0i.asp

Ok, When I posted the fix I didn't know the major and minor versions of
the various MS OSs. The above link has almost all the information (it
doesn't have maj/min versions for Win3.x). If I've got this right, then
the following table should summarise the data:

              dwMajorVersion  dwMinorVersion  dwPlatformID
Win3x+Win32s      ?                ?          VER_PLATFORM_WIN32s
       Win95      4                0          VER_PLATFORM_WIN32_WINDOWS
       Win98      4                10         VER_PLATFORM_WIN32_WINDOWS
       WinME      4                90         VER_PLATFORM_WIN32_WINDOWS
      NT3.51      3                51         VER_PLATFORM_WIN32_NT
       NT4.0      4                0          VER_PLATFORM_WIN32_NT
       Win2k      5                0          VER_PLATFORM_WIN32_NT
       WINXP      5                1          VER_PLATFORM_WIN32_NT
     WIN.NET      5                1          VER_PLATFORM_WIN32_NT

So, NT3.51 and NT4.0 should both fail the above WIN98_PLUS test (as
version.dwPlatformId != VER_PLATFORM_WIN32_WINDOWS). If the test is (Major
== 4, Minor > 0) then this would include NT4.0, or am I missing something?


> Is something in the test causing a failure?
> I've tested them on win2k and win98 (the only real Microsoft OS that I have 
> access too)

Nothing's going wrong. I'm not testing these against any real MS OS, but I
came across the code and was curious :)

Cheers,

Paul.

----
Paul Millar




More information about the wine-devel mailing list