Mercurial > hg
changeset 3256:e5c9a084ffe3
util.strdate: assume local time when no timezone specified
author | Jose M. Prieto <jmprieto@gmx.net> |
---|---|
date | Tue, 03 Oct 2006 12:33:18 +0200 |
parents | e96d2956eb4a |
children | c9cd63a6fce9 |
files | mercurial/util.py tests/test-parse-date tests/test-parse-date.out |
diffstat | 3 files changed, 13 insertions(+), 7 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/util.py Tue Oct 03 12:33:14 2006 +0200 +++ b/mercurial/util.py Tue Oct 03 12:33:18 2006 +0200 @@ -909,9 +909,15 @@ tz = int(tz) offset = - 3600 * (tz / 100) - 60 * (tz % 100) else: - date, offset = string, 0 - localunixtime = int(calendar.timegm(time.strptime(date, format))) - unixtime = localunixtime + offset + date, offset = string, None + timetuple = time.strptime(date, format) + localunixtime = int(calendar.timegm(timetuple)) + if offset is None: + # local timezone + unixtime = int(time.mktime(timetuple)) + offset = unixtime - localunixtime + else: + unixtime = localunixtime + offset return unixtime, offset def parsedate(string, formats=None):
--- a/tests/test-parse-date Tue Oct 03 12:33:14 2006 +0200 +++ b/tests/test-parse-date Tue Oct 03 12:33:18 2006 +0200 @@ -21,13 +21,13 @@ # PST=UTC-8 / PDT=UTC-7 hg debugrebuildstate echo "a" > a -hg ci -d "2006-07-15 13:30" -m "summer@UTC" +hg ci -d "2006-07-15 13:30" -m "summer@UTC-7" hg debugrebuildstate echo "b" > a hg ci -d "2006-07-15 13:30 +0500" -m "summer@UTC+5" hg debugrebuildstate echo "c" > a -hg ci -d "2006-01-15 13:30" -m "winter@UTC" +hg ci -d "2006-01-15 13:30" -m "winter@UTC-8" hg debugrebuildstate echo "d" > a hg ci -d "2006-01-15 13:30 +0500" -m "winter@UTC+5"
--- a/tests/test-parse-date.out Tue Oct 03 12:33:14 2006 +0200 +++ b/tests/test-parse-date.out Tue Oct 03 12:33:18 2006 +0200 @@ -13,9 +13,9 @@ transaction abort! rollback completed Sun Jan 15 13:30:00 2006 +0500 -Sun Jan 15 13:30:00 2006 +0000 +Sun Jan 15 13:30:00 2006 -0800 Sat Jul 15 13:30:00 2006 +0500 -Sat Jul 15 13:30:00 2006 +0000 +Sat Jul 15 13:30:00 2006 -0700 Sun Jun 11 00:26:40 2006 -0400 Sat Apr 15 13:30:00 2006 +0200 Sat Apr 15 13:30:00 2006 +0000