From 5755acd77fbed26c681cef924013a2d99415ff6c Mon Sep 17 00:00:00 2001 From: Julian Smart Date: Wed, 3 Aug 2011 15:46:43 +0000 Subject: [PATCH] Return sensible major and minor version numbers for Mac OS X git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68506 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- docs/changes.txt | 2 ++ src/osx/core/utilsexc_base.cpp | 15 ++++++++++++++- 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/docs/changes.txt b/docs/changes.txt index 0d0b99255f..4023793277 100644 --- a/docs/changes.txt +++ b/docs/changes.txt @@ -455,6 +455,8 @@ All (GUI): OSX: - Implement wxRegion::Equal() (Dr.Acula). +- wxGetOsVersion() now returns more sensible version numbers, e.g. 10 and 6 + for OS X 10.6. GTK: diff --git a/src/osx/core/utilsexc_base.cpp b/src/osx/core/utilsexc_base.cpp index e1a8a61e0d..84f8a0e3a3 100644 --- a/src/osx/core/utilsexc_base.cpp +++ b/src/osx/core/utilsexc_base.cpp @@ -77,6 +77,19 @@ long UMAGetSystemVersion() // our OS version is the same in non GUI and GUI cases wxOperatingSystemId wxGetOsVersion(int *majorVsn, int *minorVsn) { + // This returns 10 and 6 for OS X 10.6, consistent with behaviour on + // other platforms. + SInt32 maj, min; + Gestalt(gestaltSystemVersionMajor, &maj); + Gestalt(gestaltSystemVersionMinor, &min); + + if ( majorVsn != NULL ) + *majorVsn = maj; + + if ( minorVsn != NULL ) + *minorVsn = min; + +#if 0 SInt32 theSystem; Gestalt(gestaltSystemVersion, &theSystem); @@ -85,7 +98,7 @@ wxOperatingSystemId wxGetOsVersion(int *majorVsn, int *minorVsn) if ( minorVsn != NULL ) *minorVsn = (theSystem & 0xFF); - +#endif return wxOS_MAC_OSX_DARWIN; }