summaryrefslogtreecommitdiff
path: root/pkg_resources.py
diff options
context:
space:
mode:
Diffstat (limited to 'pkg_resources.py')
-rw-r--r--pkg_resources.py15
1 files changed, 7 insertions, 8 deletions
diff --git a/pkg_resources.py b/pkg_resources.py
index 46841631..9f1baca4 100644
--- a/pkg_resources.py
+++ b/pkg_resources.py
@@ -188,14 +188,13 @@ def _macosx_vers(_cache=[]):
version = platform.mac_ver()[0]
# fallback for MacPorts
if version == '':
- import re
- version_file = '/System/Library/CoreServices/SystemVersion.plist'
- version_regexp = r'<key>ProductVersion</key>\n\t<string>(.*?)</string>'
- if os.path.exists(version_file):
- osx_version = open(version_file).read()
- osx_version = re.findall(version_regexp, osx_version, re.M)
- if len(osx_version) > 0:
- version = osx_version[0]
+ import plistlib
+ plist = '/System/Library/CoreServices/SystemVersion.plist'
+ if os.path.exists(plist):
+ plist_content = plistlib.readPlist(plist)
+ if 'ProductVersion' in plist_content:
+ version = plist_content['ProductVersion']
+
_cache.append(version.split('.'))
return _cache[0]