aboutsummaryrefslogtreecommitdiffstats
path: root/lib/egg
diff options
context:
space:
mode:
authorMarco Pesenti Gritti <marco@it.gnome.org>2003-04-28 20:11:52 +0800
committerMarco Pesenti Gritti <mpeseng@src.gnome.org>2003-04-28 20:11:52 +0800
commit87df5c2a8c41c2574f63131d97fee96615dc495c (patch)
tree5c5caa070efebc5ff2898bcf4eaf695d3b3cdfe1 /lib/egg
parent70c5d9a1d5598f03a7717ba8028952ba65abaff2 (diff)
downloadgsoc2013-epiphany-87df5c2a8c41c2574f63131d97fee96615dc495c.tar
gsoc2013-epiphany-87df5c2a8c41c2574f63131d97fee96615dc495c.tar.gz
gsoc2013-epiphany-87df5c2a8c41c2574f63131d97fee96615dc495c.tar.bz2
gsoc2013-epiphany-87df5c2a8c41c2574f63131d97fee96615dc495c.tar.lz
gsoc2013-epiphany-87df5c2a8c41c2574f63131d97fee96615dc495c.tar.xz
gsoc2013-epiphany-87df5c2a8c41c2574f63131d97fee96615dc495c.tar.zst
gsoc2013-epiphany-87df5c2a8c41c2574f63131d97fee96615dc495c.zip
Reapply one of our MenuMerge patches. Fixes crashes on window close.
2003-04-28 Marco Pesenti Gritti <marco@it.gnome.org> * lib/egg/egg-menu-merge.c: (egg_menu_merge_finalize), (egg_menu_merge_class_init): Reapply one of our MenuMerge patches. Fixes crashes on window close.
Diffstat (limited to 'lib/egg')
-rw-r--r--lib/egg/egg-menu-merge.c21
1 files changed, 21 insertions, 0 deletions
diff --git a/lib/egg/egg-menu-merge.c b/lib/egg/egg-menu-merge.c
index 733cec47b..71c7fb8e0 100644
--- a/lib/egg/egg-menu-merge.c
+++ b/lib/egg/egg-menu-merge.c
@@ -72,9 +72,30 @@ egg_menu_merge_get_type (void)
return type;
}
+static GObjectClass *parent_class = NULL;
+
+static void
+egg_menu_merge_finalize (GObject *object)
+{
+ EggMenuMerge *merge;
+
+ merge = EGG_MENU_MERGE (object);
+ if (merge->update_tag != 0)
+ {
+ g_source_remove(merge->update_tag);
+ }
+}
+
static void
egg_menu_merge_class_init (EggMenuMergeClass *class)
{
+ GObjectClass *object_class;
+
+ parent_class = g_type_class_peek_parent (class);
+ object_class = G_OBJECT_CLASS(class);
+
+ object_class->finalize = egg_menu_merge_finalize;
+
if (!merge_node_chunk)
merge_node_chunk = g_mem_chunk_create(EggMenuMergeNode, 64,
G_ALLOC_AND_FREE);