X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=openbox%2Fstartupnotify.c;h=03cb752b043acb03050aef77b9a2da191ad0e79e;hb=a3f8c5c45a1ff323fc088cc5af49ab48d5679e54;hp=51e78e261da6d0e1fbbb37a6b0460c44b3318377;hpb=fc5b9a56121e1da230ae77dea0ef91979a4660e3;p=chaz%2Fopenbox diff --git a/openbox/startupnotify.c b/openbox/startupnotify.c index 51e78e26..03cb752b 100644 --- a/openbox/startupnotify.c +++ b/openbox/startupnotify.c @@ -2,7 +2,7 @@ startupnotify.c for the Openbox window manager Copyright (c) 2006 Mikael Magnusson - Copyright (c) 2003 Ben Jansens + Copyright (c) 2003-2007 Dana Jansens This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -24,7 +24,10 @@ #ifndef USE_LIBSN -void sn_startup(gboolean reconfig) {} +void sn_startup(gboolean reconfig) { + /* unset this so we don't pass it on unknowingly */ + if (!reconfig) unsetenv("DESKTOP_STARTUP_ID"); +} void sn_shutdown(gboolean reconfig) {} gboolean sn_app_starting() { return FALSE; } Time sn_app_started(const gchar *id, const gchar *wmclass) @@ -59,6 +62,9 @@ void sn_startup(gboolean reconfig) { if (reconfig) return; + /* unset this so we don't pass it on unknowingly */ + unsetenv("DESKTOP_STARTUP_ID"); + sn_display = sn_display_new(ob_display, NULL, NULL); sn_context = sn_monitor_context_new(sn_display, ob_screen, sn_event_func, NULL, NULL); @@ -138,6 +144,7 @@ static void sn_event_func(SnMonitorEvent *ev, gpointer data) have a timeout */ ob_main_loop_timeout_add(ob_main_loop, 30 * G_USEC_PER_SEC, sn_wait_timeout, seq, + g_direct_equal, (GDestroyNotify)sn_startup_sequence_unref); change = TRUE; break; @@ -250,6 +257,7 @@ void sn_setup_spawn_environment(gchar *program, gchar *name, sn_launcher_context_ref(sn_launcher); ob_main_loop_timeout_add(ob_main_loop, 30 * G_USEC_PER_SEC, sn_launch_wait_timeout, sn_launcher, + g_direct_equal, (GDestroyNotify)sn_launcher_context_unref); setenv("DESKTOP_STARTUP_ID", id, TRUE);