Fixed a caching bug in platform.platform() where the argument of 'terse' was

not taken into consideration when caching value.
This commit is contained in:
Brett Cannon 2004-03-25 16:55:12 +00:00
parent 504ca68e20
commit 21beb4c2ce
2 changed files with 12 additions and 9 deletions

View file

@ -1135,8 +1135,8 @@ def python_compiler():
### The Opus Magnum of platform strings :-) ### The Opus Magnum of platform strings :-)
_platform_cache = None _platform_cache = {True:None, False:None}
_platform_aliased_cache = None _platform_aliased_cache = {True:None, False:None}
def platform(aliased=0, terse=0): def platform(aliased=0, terse=0):
@ -1159,10 +1159,10 @@ def platform(aliased=0, terse=0):
""" """
global _platform_cache,_platform_aliased_cache global _platform_cache,_platform_aliased_cache
if not aliased and (_platform_cache is not None): if not aliased and (_platform_cache[bool(terse)] is not None):
return _platform_cache return _platform_cache[bool(terse)]
elif _platform_aliased_cache is not None: elif _platform_aliased_cache[bool(terse)] is not None:
return _platform_aliased_cache return _platform_aliased_cache[bool(terse)]
# Get uname information and then apply platform specific cosmetics # Get uname information and then apply platform specific cosmetics
# to it... # to it...
@ -1219,11 +1219,11 @@ def platform(aliased=0, terse=0):
platform = _platform(system,release,machine,processor,bits,linkage) platform = _platform(system,release,machine,processor,bits,linkage)
if aliased: if aliased:
_platform_aliased_cache = platform _platform_aliased_cache[bool(terse)] = platform
elif terse: elif terse:
pass pass
else: else:
_platform_cache = platform _platform_cache[bool(terse)] = platform
return platform return platform
### Command line interface ### Command line interface

View file

@ -283,7 +283,7 @@ Extension modules
into groups sharing the same key (as determined by a key function). into groups sharing the same key (as determined by a key function).
It offers some of functionality of SQL's groupby keyword and of It offers some of functionality of SQL's groupby keyword and of
the Unix uniq filter. the Unix uniq filter.
- itertools now has a new function, tee() which produces two independent - itertools now has a new function, tee() which produces two independent
iterators from a single iterable. iterators from a single iterable.
@ -296,6 +296,9 @@ Extension modules
Library Library
------- -------
- Fixed a caching bug in platform.platform() where the argument of 'terse' was
not taken into consideration when caching value.
- Added two new command-line arguments for profile (output file and - Added two new command-line arguments for profile (output file and
default sort). default sort).