JDK-8059803 : Update use of GetVersionEx to get correct Windows version in hs_err files
  • Type: Bug
  • Component: hotspot
  • Sub-Component: runtime
  • Affected Version: 9
  • Priority: P3
  • Status: Closed
  • Resolution: Fixed
  • OS: windows
  • Submitted: 2014-10-06
  • Updated: 2017-05-24
  • Resolved: 2014-11-03
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 7 JDK 8 JDK 9 Other
7u111Fixed 8u40Fixed 9 b40Fixed openjdk7uFixed
Related Reports
Relates :  
From MSDN:

"With the release of Windows��8.1, the behavior of the��GetVersionEx��API has changed in the value it will return for the operating system version. The value returned by the��GetVersionEx��function now depends on how the application is manifested."

On Windows 10 (6.4.9841), Java reports Windows 8.1 build 9600, so our OS detection code needs to be updated. One possible solution could be:

"To obtain the full version number for the operating system, call the��GetFileVersionInfo��function on one of the system DLLs, such as Kernel32.dll, then call��VerQueryValue��to obtain the \\StringFileInfo\\<lang><codepage>\\ProductVersion subblock of the file version information."