fix a crash-on-exit

meta_frames_destroy() was not safe to be called multiple times, which
was causing a crash on exit due to something else changing somewhere
that makes it get called multiple times.

https://bugzilla.gnome.org/show_bug.cgi?id=654489
This commit is contained in:
Dan Winship 2011-07-12 13:07:15 -04:00
parent 47b432bf89
commit d2b63eaf1f

View File

@ -313,8 +313,17 @@ meta_frames_destroy (GtkWidget *object)
}
g_slist_free (winlist);
g_object_unref (frames->normal_style);
g_hash_table_destroy (frames->style_variants);
if (frames->normal_style)
{
g_object_unref (frames->normal_style);
frames->normal_style = NULL;
}
if (frames->style_variants)
{
g_hash_table_destroy (frames->style_variants);
frames->style_variants = NULL;
}
GTK_WIDGET_CLASS (meta_frames_parent_class)->destroy (object);
}