From: Ronald Oussoren Date: Thu, 8 May 2008 10:34:39 +0000 (+0000) Subject: Fix for issue 1770190: platform.mac_ver() now returns the right X-Git-Tag: v2.6a3~1 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=c27b8b88e33e392444a05cce74da9080e3ae5b5b;p=thirdparty%2FPython%2Fcpython.git Fix for issue 1770190: platform.mac_ver() now returns the right version on OSX 10.4.10 --- diff --git a/Lib/platform.py b/Lib/platform.py index 2f0196989109..1dc8b27afc95 100755 --- a/Lib/platform.py +++ b/Lib/platform.py @@ -722,7 +722,17 @@ def mac_ver(release='',versioninfo=('','',''),machine=''): major = (sysv & 0xFF00) >> 8 minor = (sysv & 0x00F0) >> 4 patch = (sysv & 0x000F) - release = '%s.%i.%i' % (_bcd2str(major),minor,patch) + + if (major, minor) >= (10, 4): + # the 'sysv' gestald cannot return patchlevels + # higher than 9. Apple introduced 3 new + # gestalt codes in 10.4 to deal with this + # issue (needed because patch levels can + # run higher than 9, such as 10.4.11) + major,minor,patch = _mac_ver_lookup(('sys1','sys2','sys3')) + release = '%i.%i.%i' %(major, minor, patch) + else: + release = '%s.%i.%i' % (_bcd2str(major),minor,patch) if sysu: major = int((sysu & 0xFF000000L) >> 24) minor = (sysu & 0x00F00000) >> 20