[gtk+/gtk-3-18] application: Protect against double shutdown
- From: Matthias Clasen <matthiasc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk+/gtk-3-18] application: Protect against double shutdown
- Date: Thu, 28 Jan 2016 03:30:33 +0000 (UTC)
commit 39ea2982fcbf6b206fa6ec1d349ece9c7fdf74f5
Author: Matthias Clasen <mclasen redhat com>
Date: Fri Jan 15 17:36:13 2016 -0500
application: Protect against double shutdown
It is not something that can happen normally.
But if it does, we shouldn't crash.
https://bugzilla.gnome.org/show_bug.cgi?id=760680
gtk/gtkapplication.c | 9 +++++----
1 files changed, 5 insertions(+), 4 deletions(-)
---
diff --git a/gtk/gtkapplication.c b/gtk/gtkapplication.c
index 0edfe92..c236262 100644
--- a/gtk/gtkapplication.c
+++ b/gtk/gtkapplication.c
@@ -596,8 +596,7 @@ gtk_application_startup (GApplication *g_application)
{
GtkApplication *application = GTK_APPLICATION (g_application);
- G_APPLICATION_CLASS (gtk_application_parent_class)
- ->startup (g_application);
+ G_APPLICATION_CLASS (gtk_application_parent_class)->startup (g_application);
gtk_action_muxer_insert (application->priv->muxer, "app", G_ACTION_GROUP (application));
@@ -614,6 +613,9 @@ gtk_application_shutdown (GApplication *g_application)
{
GtkApplication *application = GTK_APPLICATION (g_application);
+ if (application->priv->impl == NULL)
+ return;
+
gtk_application_impl_shutdown (application->priv->impl);
g_clear_object (&application->priv->impl);
@@ -627,8 +629,7 @@ gtk_application_shutdown (GApplication *g_application)
/* Synchronize the recent manager singleton */
_gtk_recent_manager_sync ();
- G_APPLICATION_CLASS (gtk_application_parent_class)
- ->shutdown (g_application);
+ G_APPLICATION_CLASS (gtk_application_parent_class)->shutdown (g_application);
}
static gboolean
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]