Commit abe3d6d3 authored by Barry Warsaw's avatar Barry Warsaw

strptime(): The code that was adding 12 to PM hours was incorrect

because it added it to 12 PM too.  12 PM should be hour 12 not hour
24.

Also cleaned up a minor style nit.  There are more style problems in
this file that I'll clean up next (but I didn't want them to overwhelm
the substance of this fix).
parent d6b4843d
......@@ -415,12 +415,19 @@ def strptime(data_string, format="%a %b %d %H:%M:%S %Y"):
hour = int(found_dict['H'])
else:
hour = int(found_dict['I'])
if found_dict.has_key('p'):
if found_dict['p'] == locale_time.am_pm[1]:
ampm = found_dict.get('p')
if ampm == locale_time.am_pm[0]:
# We're in AM so the hour is correct unless we're
# looking at 12 midnight.
# 12 midnight == 12 AM == hour 0
if hour == 12:
hour = 0
elif ampm == locale_time.am_pm[1]:
# We're in PM so we need to add 12 to the hour unless
# we're looking at 12 noon.
# 12 noon == 12 PM == hour 12
if hour != 12:
hour += 12
else:
if hour is 12:
hour = 0
elif group_key is 'M':
minute = int(found_dict['M'])
elif group_key is 'S':
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment