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
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)
{