[gtk+] calendar: Handle invalid dates
- From: Emmanuele Bassi <ebassi src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk+] calendar: Handle invalid dates
- Date: Fri, 2 Jan 2015 23:16:26 +0000 (UTC)
commit b46fdb2d13a072bd9d91c316cae3e9139ea512b5
Author: Emmanuele Bassi <ebassi gnome org>
Date: Fri Jan 2 23:05:29 2015 +0000
calendar: Handle invalid dates
GtkCalendar can have an invalid date — mostly at initialization. This
means that GDateTime construction may fail. We need to handle that case
gracefully, like the old code did.
This fixes the `notify` test suite, which started failing with:
/Notification/GtkCalendar:
GLib-CRITICAL **: g_date_time_get_day_of_week: assertion 'datetime != NULL' failed
inside the Continuous builder.
gtk/gtkcalendar.c | 6 ++++++
1 files changed, 6 insertions(+), 0 deletions(-)
---
diff --git a/gtk/gtkcalendar.c b/gtk/gtkcalendar.c
index 3985a7d..b4ef543 100644
--- a/gtk/gtkcalendar.c
+++ b/gtk/gtkcalendar.c
@@ -108,6 +108,9 @@ day_of_week (guint year, guint mm, guint dd)
guint days;
dt = g_date_time_new_local (year, mm, dd, 1, 1, 1);
+ if (dt == NULL)
+ return 0;
+
days = g_date_time_get_day_of_week (dt);
g_date_time_unref (dt);
@@ -121,6 +124,9 @@ week_of_year (guint year, guint mm, guint dd)
guint week;
dt = g_date_time_new_local (year, mm, dd, 1, 1, 1);
+ if (dt == NULL)
+ return 1;
+
week = g_date_time_get_week_of_year (dt);
g_date_time_unref (dt);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]