diff --git a/src/views/gcal-week-header.c b/src/views/gcal-week-header.c index 8168e7e3..ae92a32c 100644 --- a/src/views/gcal-week-header.c +++ b/src/views/gcal-week-header.c @@ -367,9 +367,10 @@ update_overflow (GcalWeekHeader *self) gtk_label_set_label (GTK_LABEL (label), text); g_free (text); } - else + else if (label) { - g_clear_pointer (&self->overflow_label[i], gtk_widget_destroy); + gtk_widget_destroy (label); + self->overflow_label[i] = NULL; } } @@ -1668,6 +1669,13 @@ gcal_week_header_add_event (GcalWeekHeader *self, else end = 6; + /* Sanity checks */ + if (start > end || start > 6 || end < 0) + { + g_warning ("Error adding event '%s' to the week header", gcal_event_get_summary (event)); + return; + } + /* Add the event widget to the grid */ add_event_to_grid (self, event, start, end);