]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
Fix for issue 1770190: platform.mac_ver() now returns the right
authorRonald Oussoren <ronaldoussoren@mac.com>
Thu, 8 May 2008 10:34:39 +0000 (10:34 +0000)
committerRonald Oussoren <ronaldoussoren@mac.com>
Thu, 8 May 2008 10:34:39 +0000 (10:34 +0000)
version on OSX 10.4.10

Lib/platform.py

index 2f0196989109cefcd63786f8890e683adebc51e7..1dc8b27afc95c9600dd8e33e4596053771035af2 100755 (executable)
@@ -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