GNOME Bugzilla – Bug 719717
g_date_time_format fails in C Locale with format ("%a %l∶%M %p")
Last modified: 2014-11-07 18:17:30 UTC
Somehow, I ended up with the C Locale as my default locale after an upgrade from F18 to F19, after which gnome-shell failed to start. After some digging, I discovered that g_date_time_format was failing with ("%a %l∶%M %p"), which corresponds to "org.gnome.desktop.interface clock-format '12h'". Setting it to the default 24h format ("%a %R") made login work. Clearly, the locale shouldn't be C, but I don't think glib should fail in that scenario. I found the formats from the following source code link: https://git.gnome.org/browse/gnome-desktop/tree/libgnome-desktop/gnome-wall-clock.c?h=gnome-3-8#n265
(In reply to comment #0) > Somehow, I ended up with the C Locale as my default locale after an upgrade > from F18 to F19, after which gnome-shell failed to start. After some digging, I > discovered that g_date_time_format was failing with ("%a %l∶%M %p") I see that that string uses the unicode character (U+2236 RATIO) rather than colon. Is it possible that is what causes the problem in the C locale? In that case it would explain why ("%a %R") works.
Looking some more I see that the ratio character has been reverted: https://git.gnome.org/browse/gnome-desktop/commit/libgnome-desktop/gnome-wall-clock.c?id=a14c4fd24c30b5eb38fa3f93bb0938dc187941e9 Bug 722664 also looks similar to this one, and it has been marked as fixed. "Some of our translations use the ratio symbol which isn't convertible to non-UTF-8 locale encodings which causes g_date_time_format() to fail. Work around it by replacing the ratio symbol with a plain colon."
*** This bug has been marked as a duplicate of bug 722664 ***