From bb659a752efbeedbe60fb6df5541a57c95777279 Mon Sep 17 00:00:00 2001 From: Nikolay Martynov Date: Mon, 24 Nov 2014 22:46:51 -0500 Subject: Properly check gdk_property_get result Check return value of gdk_property_get in get_initial_workspace before using its result Current implementation segfaults from to time if terminal is started at X session startup Looks like #769947 bug in Debian describes same issue --- src/terminal.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/terminal.c b/src/terminal.c index a6bf43f..f9989a5 100644 --- a/src/terminal.c +++ b/src/terminal.c @@ -532,10 +532,10 @@ get_initial_workspace (void) atom = gdk_atom_intern_static_string ("_NET_CURRENT_DESKTOP"); cardinal_atom = gdk_atom_intern_static_string ("CARDINAL"); - gdk_property_get (window, atom, cardinal_atom, 0, 8, FALSE, NULL, NULL, NULL, &data); - - ret = *(int *)data; - g_free (data); + if (gdk_property_get (window, atom, cardinal_atom, 0, 8, FALSE, NULL, NULL, NULL, &data)) { + ret = *(int *)data; + g_free (data); + } return ret; } -- cgit v1.2.1