summaryrefslogtreecommitdiff
path: root/glib/gdatetime.c
diff options
context:
space:
mode:
authorRay Strode <rstrode@redhat.com>2011-01-17 14:15:18 -0500
committerRay Strode <rstrode@redhat.com>2011-01-17 14:31:34 -0500
commite8120dc4ce75b0cff6d45632e5d9037853ad51ae (patch)
treefed89b822d96bb1420157ca5315e6bc3ef208969 /glib/gdatetime.c
parenta437c5e768b9a62b550e174b25413ce9149fcdbe (diff)
downloadglib-e8120dc4ce75b0cff6d45632e5d9037853ad51ae.tar.gz
datetime: Show 12 instead of 0 for 12h hour format
The 12h mode hour format is computed by taking the 24h mode hour format modulo 12. The conversion results in 12 noon getting erroneously converted to 0. This commit makes noon get the same special handling as midnight.
Diffstat (limited to 'glib/gdatetime.c')
-rw-r--r--glib/gdatetime.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/glib/gdatetime.c b/glib/gdatetime.c
index 7f8359119..44e4c5257 100644
--- a/glib/gdatetime.c
+++ b/glib/gdatetime.c
@@ -2297,7 +2297,7 @@ g_date_time_format (GDateTime *datetime,
g_string_append_printf (outstr, "%02d", g_date_time_get_hour (datetime));
break;
case 'I':
- if (g_date_time_get_hour (datetime) == 0)
+ if ((g_date_time_get_hour (datetime) % 12) == 0)
g_string_append (outstr, "12");
else
g_string_append_printf (outstr, "%02d", g_date_time_get_hour (datetime) % 12);
@@ -2309,7 +2309,7 @@ g_date_time_format (GDateTime *datetime,
g_string_append_printf (outstr, "%2d", g_date_time_get_hour (datetime));
break;
case 'l':
- if (g_date_time_get_hour (datetime) == 0)
+ if ((g_date_time_get_hour (datetime) % 12) == 0)
g_string_append (outstr, "12");
else
g_string_append_printf (outstr, "%2d", g_date_time_get_hour (datetime) % 12);