Use more g_signal_connect_object()

Most of these are probably paranoid, not bugs. I haven't done an
exhaustive review to see what really needs it: that would be
time-consuming and require significant familiarity with the Calendar
codebase. This was just a quick check. Anyway, I vote for paranoid
when it comes to using g_signal_connect() regardless. It's dangerous,
and there's no reason to ever leave a signal connected after the user
data object has been destroyed.

Fixes #423
This commit is contained in:
Michael Catanzaro
2019-09-14 23:28:42 +00:00
committed by Georges Basile Stavracas Neto
parent 9644c30eee
commit 18ae67cb59
15 changed files with 87 additions and 74 deletions
+10 -8
View File
@@ -498,15 +498,17 @@ gcal_event_widget_set_event_internal (GcalEventWidget *self,
/* Update color */
update_color (self);
g_signal_connect_swapped (event,
"notify::color",
G_CALLBACK (update_color),
self);
g_signal_connect_object (event,
"notify::color",
G_CALLBACK (update_color),
self,
G_CONNECT_SWAPPED);
g_signal_connect_swapped (event,
"notify::summary",
G_CALLBACK (gtk_widget_queue_draw),
self);
g_signal_connect_object (event,
"notify::summary",
G_CALLBACK (gtk_widget_queue_draw),
self,
G_CONNECT_SWAPPED);
/* Tooltip */
gcal_event_widget_set_event_tooltip (self, event);