diff options
author | Brett Cannon <bcannon@gmail.com> | 2003-07-24 20:02:28 (GMT) |
---|---|---|
committer | Brett Cannon <bcannon@gmail.com> | 2003-07-24 20:02:28 (GMT) |
commit | 2c24d42d329ad48cc7c92bfed935c28e8fcdd188 (patch) | |
tree | b9e4cd1e1b8c71b65dde172d64bfe741b8371dff | |
parent | 9a71475e9e2e2532819ccacc8d2a6e53fd01a9d2 (diff) | |
download | cpython-2c24d42d329ad48cc7c92bfed935c28e8fcdd188.zip cpython-2c24d42d329ad48cc7c92bfed935c28e8fcdd188.tar.gz cpython-2c24d42d329ad48cc7c92bfed935c28e8fcdd188.tar.bz2 |
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.
-rw-r--r-- | Lib/_strptime.py | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/Lib/_strptime.py b/Lib/_strptime.py index ff25daa..ed8ed35 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<y>\d\d)", 'Y': r"(?P<Y>\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.""" |