diff options
author | JP Rosevear <jpr@ximian.com> | 2001-01-23 14:34:56 +0800 |
---|---|---|
committer | JP Rosevear <jpr@src.gnome.org> | 2001-01-23 14:34:56 +0800 |
commit | 4e6218b86bba68aea073482ec62b645e04f941ab (patch) | |
tree | 5806172cd5520e9cf5380790f492573bad80b5a2 | |
parent | 78fb2fa0edcad3facb7e1f5cab12303b1864e47e (diff) | |
download | gsoc2013-evolution-4e6218b86bba68aea073482ec62b645e04f941ab.tar.gz gsoc2013-evolution-4e6218b86bba68aea073482ec62b645e04f941ab.tar.zst gsoc2013-evolution-4e6218b86bba68aea073482ec62b645e04f941ab.zip |
properly ref the cal component when we use it, prevents double free
2001-01-23 JP Rosevear <jpr@ximian.com>
* conduits/todo/todo-conduit.c (local_record_from_comp): properly ref
the cal component when we use it, prevents double free
* conduits/calendar/calendar-conduit.c (local_record_from_comp): ditto
svn path=/trunk/; revision=7741
-rw-r--r-- | calendar/ChangeLog | 7 | ||||
-rw-r--r-- | calendar/conduits/calendar/calendar-conduit.c | 3 | ||||
-rw-r--r-- | calendar/conduits/todo/todo-conduit.c | 1 |
3 files changed, 10 insertions, 1 deletions
diff --git a/calendar/ChangeLog b/calendar/ChangeLog index 76f1f01b9c..8eadcfec22 100644 --- a/calendar/ChangeLog +++ b/calendar/ChangeLog @@ -1,3 +1,10 @@ +2001-01-23 JP Rosevear <jpr@ximian.com> + + * conduits/todo/todo-conduit.c (local_record_from_comp): properly ref + the cal component when we use it, prevents double free + + * conduits/calendar/calendar-conduit.c (local_record_from_comp): ditto + 2001-01-22 JP Rosevear <jpr@ximian.com> * gui/dialogs/Makefile.am: compile new stuff diff --git a/calendar/conduits/calendar/calendar-conduit.c b/calendar/conduits/calendar/calendar-conduit.c index 35ea44145b..1df6a2c8fd 100644 --- a/calendar/conduits/calendar/calendar-conduit.c +++ b/calendar/conduits/calendar/calendar-conduit.c @@ -375,7 +375,8 @@ local_record_from_comp (ECalLocalRecord *local, CalComponent *comp, ECalConduitC g_return_if_fail (comp != NULL); local->comp = comp; - + gtk_object_ref (GTK_OBJECT (comp)); + cal_component_get_uid (local->comp, &uid); local->local.ID = e_pilot_map_lookup_pid (ctxt->map, uid); compute_status (ctxt, local, uid); diff --git a/calendar/conduits/todo/todo-conduit.c b/calendar/conduits/todo/todo-conduit.c index 17e51d106a..482737c4a5 100644 --- a/calendar/conduits/todo/todo-conduit.c +++ b/calendar/conduits/todo/todo-conduit.c @@ -328,6 +328,7 @@ local_record_from_comp (EToDoLocalRecord *local, CalComponent *comp, EToDoCondui g_return_if_fail (comp != NULL); local->comp = comp; + gtk_object_ref (GTK_OBJECT (comp)); cal_component_get_uid (local->comp, &uid); local->local.ID = e_pilot_map_lookup_pid (ctxt->map, uid); |