Author: kelnos Date: 2008-04-15 10:36:24 +0000 (Tue, 15 Apr 2008) New Revision: 26845
Modified: xfconf/trunk/xfconf/xfconf-binding.c Log: remove XfconfGBinding from channel's list if the GObject gets freed Modified: xfconf/trunk/xfconf/xfconf-binding.c =================================================================== --- xfconf/trunk/xfconf/xfconf-binding.c 2008-04-15 08:55:39 UTC (rev 26844) +++ xfconf/trunk/xfconf/xfconf-binding.c 2008-04-15 10:36:24 UTC (rev 26845) @@ -93,6 +93,16 @@ GObject *where_the_object_was) { XfconfGBinding *binding = data; + GList *bindings = g_object_steal_data(G_OBJECT(binding->channel), + "--xfconf-g-bindings"); + + bindings = g_list_remove(bindings, binding); + if(bindings) { + g_object_set_data_full(G_OBJECT(binding->channel), + "--xfconf-g-bindings", + bindings, (GDestroyNotify)g_list_free); + } + binding->object = NULL; xfconf_g_binding_free(binding); } _______________________________________________ Xfce4-commits mailing list Xfce4-commits@xfce.org http://foo-projects.org/mailman/listinfo/xfce4-commits