[glib] GAppInfo: overwrite the DISPLAY only if it is set in the launch context
- From: Debarshi Ray <debarshir src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [glib] GAppInfo: overwrite the DISPLAY only if it is set in the launch context
- Date: Thu, 26 Apr 2012 21:12:51 +0000 (UTC)
commit 3f816dc5d14ce64f89c5e8b16ac7d8c1f3542b0d
Author: Debarshi Ray <debarshir gnome org>
Date: Mon Apr 16 23:00:01 2012 +0200
GAppInfo: overwrite the DISPLAY only if it is set in the launch context
If the launch context is a GAppLaunchContext, and not a
GdkAppLaunchContext, then g_app_launch_context_get_display will return
NULL because the get_display virtual method is undefined. The DISPLAY
might still be inherited from the parent process, in which case
overwriting it with NULL breaks the launch.
This is a regression introduced in:
de834bed306565c0652050665eafff4dfcdf0d8b
Fixes: https://bugzilla.gnome.org/672786
gio/gdesktopappinfo.c | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
---
diff --git a/gio/gdesktopappinfo.c b/gio/gdesktopappinfo.c
index 7078dab..4044679 100644
--- a/gio/gdesktopappinfo.c
+++ b/gio/gdesktopappinfo.c
@@ -1309,7 +1309,8 @@ _g_desktop_app_info_launch_uris_internal (GAppInfo *appinfo,
display = g_app_launch_context_get_display (launch_context,
appinfo,
launched_files);
- envp = g_environ_setenv (envp, "DISPLAY", display, TRUE);
+ if (display)
+ envp = g_environ_setenv (envp, "DISPLAY", display, TRUE);
if (info->startup_notify)
{
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]