|
|
ef89aa1 |
From d6e5ef02ebdc059e2412d429c23a39f6171a4851 Mon Sep 17 00:00:00 2001
|
|
|
ef89aa1 |
From: Matthias Clasen <mclasen@redhat.com>
|
|
|
ef89aa1 |
Date: Wed, 8 Jan 2014 18:51:53 -0500
|
|
|
ef89aa1 |
Subject: [PATCH 1/2] Be more careful with XIDs
|
|
|
ef89aa1 |
|
|
|
ef89aa1 |
When an invalid XID is specified, we end up calling
|
|
|
ef89aa1 |
gdk_window_set_transient_for with a NULL window. This leads
|
|
|
ef89aa1 |
to a crash, so don't do it, and instead silently ignore
|
|
|
ef89aa1 |
the invalid XID.
|
|
|
ef89aa1 |
|
|
|
ef89aa1 |
https://bugzilla.gnome.org/show_bug.cgi?id=721278
|
|
|
ef89aa1 |
---
|
|
|
ef89aa1 |
src/disks/gduformatvolumedialog.c | 3 ++-
|
|
|
ef89aa1 |
1 file changed, 2 insertions(+), 1 deletion(-)
|
|
|
ef89aa1 |
|
|
|
ef89aa1 |
diff --git a/src/disks/gduformatvolumedialog.c b/src/disks/gduformatvolumedialog.c
|
|
|
ef89aa1 |
index c737cb0..f741ade 100644
|
|
|
ef89aa1 |
--- a/src/disks/gduformatvolumedialog.c
|
|
|
ef89aa1 |
+++ b/src/disks/gduformatvolumedialog.c
|
|
|
ef89aa1 |
@@ -181,7 +181,8 @@ gdu_format_volume_dialog_show_internal (UDisksClient *client,
|
|
|
ef89aa1 |
GdkWindow *foreign_window = gdk_x11_window_foreign_new_for_display (gdk_display_get_default (), parent_xid);
|
|
|
ef89aa1 |
if (!gtk_widget_get_realized (data->dialog))
|
|
|
ef89aa1 |
gtk_widget_realize (data->dialog);
|
|
|
ef89aa1 |
- gdk_window_set_transient_for (gtk_widget_get_window (data->dialog), foreign_window);
|
|
|
ef89aa1 |
+ if (foreign_window != NULL)
|
|
|
ef89aa1 |
+ gdk_window_set_transient_for (gtk_widget_get_window (data->dialog), foreign_window);
|
|
|
ef89aa1 |
}
|
|
|
ef89aa1 |
|
|
|
ef89aa1 |
gtk_dialog_set_default_response (GTK_DIALOG (data->dialog), GTK_RESPONSE_OK);
|
|
|
ef89aa1 |
--
|
|
|
ef89aa1 |
1.8.4.2
|
|
|
ef89aa1 |
|