From ff8fda36178e5d44b402757dcdc5a2bb54e52b7d Mon Sep 17 00:00:00 2001 From: Gilles Depeyrot Date: Wed, 31 Oct 2001 22:23:58 +0000 Subject: [PATCH] corrected access to NULL parameters in wxGetOsVersion replaced wxMACINTOSH with wxMAC and wxMAC_DARWIN to differentiate return value of wxGetOsVersion according to whether Mac paths or Unix paths are used git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@12237 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- docs/latex/wx/function.tex | 4 ++-- include/wx/defs.h | 3 ++- src/common/wincmn.cpp | 3 ++- src/mac/carbon/utils.cpp | 21 ++++++++++++++++----- src/mac/utils.cpp | 21 ++++++++++++++++----- 5 files changed, 38 insertions(+), 14 deletions(-) diff --git a/docs/latex/wx/function.tex b/docs/latex/wx/function.tex index c65fa24a53..c53913f111 100644 --- a/docs/latex/wx/function.tex +++ b/docs/latex/wx/function.tex @@ -11,7 +11,7 @@ The following constants are defined in wxWindows: \begin{itemize}\itemsep=0pt \item {\tt wxMAJOR\_VERSION} is the major version of wxWindows \item {\tt wxMINOR\_VERSION} is the minor version of wxWindows -\item {\tt wxRELASE\_NUMBER} is the release number +\item {\tt wxRELEASE\_NUMBER} is the release number \end{itemize} For example, the values or these constants for wxWindows 2.1.15 are 2, 1 and @@ -1698,7 +1698,7 @@ Gets operating system version information. \begin{twocollist}\itemsep=0pt \twocolitemruled{Platform}{Return types} -\twocolitem{Macintosh}{Return value is wxMACINTOSH.} +\twocolitem{Mac OS}{Return value is wxMAC when compiled with CodeWarrior under Mac OS 8.x/9.x and Mac OS X, wxMAC_DARWIN when compiled with the Apple Developer Tools under Mac OS X.} \twocolitem{GTK}{Return value is wxGTK, For GTK 1.0, {\it major} is 1, {\it minor} is 0. } \twocolitem{Motif}{Return value is wxMOTIF\_X, {\it major} is X version, {\it minor} is X revision.} \twocolitem{OS/2}{Return value is wxOS2\_PM.} diff --git a/include/wx/defs.h b/include/wx/defs.h index 8f7d9f9ec3..a2749f74b0 100644 --- a/include/wx/defs.h +++ b/include/wx/defs.h @@ -385,7 +385,8 @@ enum wxMOTIF_X, // OSF Motif 1.x.x wxCOSE_X, // OSF Common Desktop Environment wxNEXTSTEP, // NeXTStep - wxMACINTOSH, // Apple System 7 and 8 + wxMAC, // Apple Mac OS 8/9/X with Mac paths + wxMAC_DARWIN, // Apple Mac OS X with Unix paths wxBEOS, // BeOS wxGTK, // GTK on X wxGTK_WIN32, // GTK on Win32 diff --git a/src/common/wincmn.cpp b/src/common/wincmn.cpp index 07f22dfcb1..26df7cc81f 100644 --- a/src/common/wincmn.cpp +++ b/src/common/wincmn.cpp @@ -1503,7 +1503,8 @@ void wxWindowBase::OnMiddleClick( wxMouseEvent& event ) switch ( wxGetOsVersion() ) { case wxMOTIF_X: port = _T("Motif"); break; - case wxMACINTOSH: port = _T("Mac"); break; + case wxMAC: + case wxMAC_DARWIN: port = _T("Mac"); break; case wxBEOS: port = _T("BeOS"); break; case wxGTK: case wxGTK_WIN32: diff --git a/src/mac/carbon/utils.cpp b/src/mac/carbon/utils.cpp index 95efb40dbb..41da489e3b 100644 --- a/src/mac/carbon/utils.cpp +++ b/src/mac/carbon/utils.cpp @@ -190,11 +190,22 @@ void wxBell() int wxGetOsVersion(int *majorVsn, int *minorVsn) { - long theSystem ; - Gestalt(gestaltSystemVersion, &theSystem) ; - *minorVsn = (theSystem & 0xFF ) ; - *majorVsn = (theSystem >> 8 ) ; // are there x-platform conventions ? - return wxMACINTOSH; + long theSystem ; + + // are there x-platform conventions ? + + Gestalt(gestaltSystemVersion, &theSystem) ; + if (minorVsn != NULL) { + *minorVsn = (theSystem & 0xFF ) ; + } + if (majorVsn != NULL) { + *majorVsn = (theSystem >> 8 ) ; + } +#ifdef __DARWIN__ + return wxMAC_DARWIN; +#else + return wxMAC; +#endif } // Reading and writing resources (eg WIN.INI, .Xdefaults) diff --git a/src/mac/utils.cpp b/src/mac/utils.cpp index 95efb40dbb..41da489e3b 100644 --- a/src/mac/utils.cpp +++ b/src/mac/utils.cpp @@ -190,11 +190,22 @@ void wxBell() int wxGetOsVersion(int *majorVsn, int *minorVsn) { - long theSystem ; - Gestalt(gestaltSystemVersion, &theSystem) ; - *minorVsn = (theSystem & 0xFF ) ; - *majorVsn = (theSystem >> 8 ) ; // are there x-platform conventions ? - return wxMACINTOSH; + long theSystem ; + + // are there x-platform conventions ? + + Gestalt(gestaltSystemVersion, &theSystem) ; + if (minorVsn != NULL) { + *minorVsn = (theSystem & 0xFF ) ; + } + if (majorVsn != NULL) { + *majorVsn = (theSystem >> 8 ) ; + } +#ifdef __DARWIN__ + return wxMAC_DARWIN; +#else + return wxMAC; +#endif } // Reading and writing resources (eg WIN.INI, .Xdefaults) -- 2.45.2