summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBrett Cannon <bcannon@gmail.com>2003-07-24 20:02:28 (GMT)
committerBrett Cannon <bcannon@gmail.com>2003-07-24 20:02:28 (GMT)
commit2c24d42d329ad48cc7c92bfed935c28e8fcdd188 (patch)
treeb9e4cd1e1b8c71b65dde172d64bfe741b8371dff
parent9a71475e9e2e2532819ccacc8d2a6e53fd01a9d2 (diff)
downloadcpython-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.py7
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."""