From: Brett Cannon Date: Thu, 24 Jul 2003 20:02:28 +0000 (+0000) Subject: Fixes bug of having default argument for TimeRE's __init__ that caused the X-Git-Tag: v2.3c2~5 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=2c24d42d329ad48cc7c92bfed935c28e8fcdd188;p=thirdparty%2FPython%2Fcpython.git Fixes bug of having default argument for TimeRE's __init__ that caused the LocaleTime instance to only be created once and thus not be recreated when the locale changed. --- diff --git a/Lib/_strptime.py b/Lib/_strptime.py index ff25daab264e..ed8ed35373a4 100644 --- a/Lib/_strptime.py +++ b/Lib/_strptime.py @@ -292,7 +292,7 @@ class LocaleTime(object): class TimeRE(dict): """Handle conversion from format directives to regexes.""" - def __init__(self, locale_time=LocaleTime()): + def __init__(self, locale_time=None): """Init inst with non-locale regexes and store LocaleTime object.""" #XXX: Does 'Y' need to worry about having less or more than 4 digits? base = super(TimeRE, self) @@ -311,7 +311,10 @@ class TimeRE(dict): 'y': r"(?P\d\d)", 'Y': r"(?P\d\d\d\d)"}) base.__setitem__('W', base.__getitem__('U')) - self.locale_time = locale_time + if locale_time: + self.locale_time = locale_time + else: + self.locale_time = LocaleTime() def __getitem__(self, fetch): """Try to fetch regex; if it does not exist, construct it."""