What this tells us is that this is actually a bug in glib2.0 function g_app_info_launch_uris().
The bug occurs when this is launched with a context including a screen with gdk_screen_make_display_name(screen)=":0.1" but the parent process has DISPLAY=":0.0"
Here is a snippet of the relevent code sequence in gnome-panel:
Actually, this helps a lot.
What this tells us is that this is actually a bug in glib2.0 function g_app_info_ launch_ uris().
The bug occurs when this is launched with a context including a screen with gdk_screen_ make_display_ name(screen) =":0.1" but the parent process has DISPLAY=":0.0"
Here is a snippet of the relevent code sequence in gnome-panel:
...
gdk_app_ launch_ context_ set_screen (context, screen);
gdk_app_ launch_ context_ set_timestamp (context, timestamp);
local_error = NULL; launch_ uris (appinfo, uris,
( GAppLaunchConte xt *) context,
retval = g_app_info_
...