Blame SOURCES/evolution-data-server-3.12.11-time-parse-am-pm.patch

5e6360
diff -up evolution-data-server-3.12.11/libedataserver/e-time-utils.c.time-parse-am-pm evolution-data-server-3.12.11/libedataserver/e-time-utils.c
5e6360
--- evolution-data-server-3.12.11/libedataserver/e-time-utils.c.time-parse-am-pm	2014-06-01 21:10:19.000000000 +0200
5e6360
+++ evolution-data-server-3.12.11/libedataserver/e-time-utils.c	2015-07-10 16:24:54.918755056 +0200
5e6360
@@ -1576,9 +1576,28 @@ static gboolean
5e6360
 locale_supports_12_hour_format (void)
5e6360
 {
5e6360
 	struct tm tmp_tm = { 0 };
5e6360
-	gchar s[16];
5e6360
+	gchar s[40];
5e6360
+
5e6360
+	/* Fill the struct tm with some sane values. */
5e6360
+	tmp_tm.tm_year = 2000;
5e6360
+	tmp_tm.tm_mon = 0;
5e6360
+	tmp_tm.tm_mday = 1;
5e6360
+	tmp_tm.tm_sec = 0;
5e6360
+	tmp_tm.tm_isdst = 0;
5e6360
+	tmp_tm.tm_hour = 1;
5e6360
+	tmp_tm.tm_min = 0;
5e6360
+	tmp_tm.tm_wday = 6;
5e6360
+	tmp_tm.tm_yday = 6;
5e6360
 
5e6360
 	e_utf8_strftime (s, sizeof (s), "%p", &tmp_tm);
5e6360
+
5e6360
+	if (!s[0]) {
5e6360
+		tmp_tm.tm_hour = 13;
5e6360
+		tmp_tm.tm_min = 0;
5e6360
+
5e6360
+		e_utf8_strftime (s, sizeof (s), "%p", &tmp_tm);
5e6360
+	}
5e6360
+
5e6360
 	return s[0] != '\0';
5e6360
 }
5e6360