From: Brett Cannon Date: Thu, 25 Mar 2004 16:56:14 +0000 (+0000) Subject: Fixed a caching bug in platform.platform() where the argument of 'terse' was X-Git-Tag: v2.3.4c1~90 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=a4645bf96f3751809f7c716b7a19868db91e2a96;p=thirdparty%2FPython%2Fcpython.git Fixed a caching bug in platform.platform() where the argument of 'terse' was not taken into consideration when caching value. --- diff --git a/Lib/platform.py b/Lib/platform.py index 1547e1247fe7..54560a5be3b5 100755 --- a/Lib/platform.py +++ b/Lib/platform.py @@ -1136,8 +1136,8 @@ def python_compiler(): ### The Opus Magnum of platform strings :-) -_platform_cache = None -_platform_aliased_cache = None +_platform_cache = {True:None, False:None} +_platform_aliased_cache = {True:None, False:None} def platform(aliased=0, terse=0): @@ -1160,10 +1160,10 @@ def platform(aliased=0, terse=0): """ global _platform_cache,_platform_aliased_cache - if not aliased and (_platform_cache is not None): - return _platform_cache - elif _platform_aliased_cache is not None: - return _platform_aliased_cache + if not aliased and (_platform_cache[bool(terse)] is not None): + return _platform_cache[bool(terse)] + elif _platform_aliased_cache[bool(terse)] is not None: + return _platform_aliased_cache[bool(terse)] # Get uname information and then apply platform specific cosmetics # to it... @@ -1220,11 +1220,11 @@ def platform(aliased=0, terse=0): platform = _platform(system,release,machine,processor,bits,linkage) if aliased: - _platform_aliased_cache = platform + _platform_aliased_cache[bool(terse)] = platform elif terse: pass else: - _platform_cache = platform + _platform_cache[bool(terse)] = platform return platform ### Command line interface diff --git a/Misc/NEWS b/Misc/NEWS index 1cbfda33b194..bacc90991e50 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -38,6 +38,9 @@ Core and builtins Library ------- +- Fixed a caching bug in platform.platform() where the argument of 'terse' was + not taken into consideration when caching value. + - Bug #920575: A problem that _locale module segfaults on nl_langinfo(ERA) caused by GNU libc's illegal NULL return is fixed.