RFR(M): 8059803 - Update use of GetVersionEx to get correct Windows version in hs_err files

Christian Tornqvist christian.tornqvist at oracle.com
Thu Oct 30 22:19:52 UTC 2014


Hi everyone,

 

For the release of Windows 8.1, Microsoft changed the way GetVersionEx
works. Instead of reporting the actual OS version it depends on how the
application is manifested, I discovered this when running on Windows 10
where it reported the OS being Windows 8.1. 

 

I changed the code to query and base the OS detection code on the file
version of kernel32.dll (as suggested on MSDN). We do lose the service pack
level but I don't think that's the end of the world, especially since we
don't detect Windows 8/8.1 Updates using GetVersionEx anyway. I added the
full version of what we read from kernel32.dll after our parsed version,
example output from my Windows 8.1 x64 machine:

 

OS: Windows 8.1 , 64 bit Build 9600 (6.3.9600.17056)

 

Testing: Manual tested on all our supported versions of Windows (14
different versions) using hs_err information, Aurora adhoc run on Windows
32/64bit and jprt

 

Webrev:

http://cr.openjdk.java.net/~ctornqvi/webrev/8059803/webrev.00/

 

Bug:

https://bugs.openjdk.java.net/browse/JDK-8059803

 

Thanks,

Christian



More information about the hotspot-runtime-dev mailing list