summaryrefslogtreecommitdiff
path: root/fastimport/dates.py
diff options
context:
space:
mode:
Diffstat (limited to 'fastimport/dates.py')
-rw-r--r--fastimport/dates.py9
1 files changed, 6 insertions, 3 deletions
diff --git a/fastimport/dates.py b/fastimport/dates.py
index c467ff7..c0cf400 100644
--- a/fastimport/dates.py
+++ b/fastimport/dates.py
@@ -35,18 +35,21 @@ def parse_raw(s, lineno=0):
"""
timestamp_str, timezone_str = s.split(' ', 1)
timestamp = float(timestamp_str)
- timezone = _parse_tz(timezone_str, lineno)
+ try:
+ timezone = parse_tz(timezone_str)
+ except ValueError:
+ raise errors.InvalidTimezone(lineno, timezone_str)
return timestamp, timezone
-def _parse_tz(tz, lineno):
+def parse_tz(tz):
"""Parse a timezone specification in the [+|-]HHMM format.
:return: the timezone offset in seconds.
"""
# from git_repository.py in bzr-git
if len(tz) != 5:
- raise errors.InvalidTimezone(lineno, tz)
+ raise ValueError(tz)
sign = {'+': +1, '-': -1}[tz[0]]
hours = int(tz[1:3])
minutes = int(tz[3:])