@@ -659,10 +659,10 @@ PHPAPI zend_string *php_get_uname(char mode)
659
659
ZEND_ASSERT (php_is_valid_uname_mode (mode ));
660
660
#ifdef PHP_WIN32
661
661
char tmp_uname [256 ];
662
- DWORD dwBuild = 0 ;
663
- DWORD dwVersion = GetVersion () ;
664
- DWORD dwWindowsMajorVersion = ( DWORD )( LOBYTE ( LOWORD ( dwVersion ))) ;
665
- DWORD dwWindowsMinorVersion = ( DWORD )( HIBYTE ( LOWORD ( dwVersion ))) ;
662
+ OSVERSIONINFOEX osvi = EG ( windows_version_info ) ;
663
+ DWORD dwWindowsMajorVersion = osvi . dwMajorVersion ;
664
+ DWORD dwWindowsMinorVersion = osvi . dwMinorVersion ;
665
+ DWORD dwBuild = osvi . dwBuildNumber ;
666
666
DWORD dwSize = MAX_COMPUTERNAME_LENGTH + 1 ;
667
667
char ComputerName [MAX_COMPUTERNAME_LENGTH + 1 ];
668
668
@@ -676,7 +676,6 @@ PHPAPI zend_string *php_get_uname(char mode)
676
676
php_uname = ComputerName ;
677
677
} else if (mode == 'v' ) {
678
678
char * winver = php_get_windows_name ();
679
- dwBuild = (DWORD )(HIWORD (dwVersion ));
680
679
681
680
ZEND_ASSERT (winver != NULL );
682
681
@@ -693,7 +692,6 @@ PHPAPI zend_string *php_get_uname(char mode)
693
692
ZEND_ASSERT (winver != NULL );
694
693
695
694
php_get_windows_cpu (wincpu , sizeof (wincpu ));
696
- dwBuild = (DWORD )(HIWORD (dwVersion ));
697
695
698
696
/* Windows "version" 6.2 could be Windows 8/Windows Server 2012, but also Windows 8.1/Windows Server 2012 R2 */
699
697
if (dwWindowsMajorVersion == 6 && dwWindowsMinorVersion == 2 ) {
0 commit comments