Get the session client id from new gnome-session
See http://live.gnome.org/SessionManagement/GnomeSession#A1._Launch Gnome-session sets the DESKTOP_AUTOSTART_ID env variable with the SM client id instead of passing it on the command line.
This commit is contained in:
parent
7e6ef2683f
commit
5c01dc651a
1 changed files with 13 additions and 0 deletions
|
@ -561,8 +561,21 @@ static void remove_args(gint *argc, gchar **argv, gint index, gint num)
|
||||||
|
|
||||||
static void parse_env()
|
static void parse_env()
|
||||||
{
|
{
|
||||||
|
const gchar *id;
|
||||||
|
|
||||||
/* unset this so we don't pass it on unknowingly */
|
/* unset this so we don't pass it on unknowingly */
|
||||||
unsetenv("DESKTOP_STARTUP_ID");
|
unsetenv("DESKTOP_STARTUP_ID");
|
||||||
|
|
||||||
|
/* this is how gnome-session passes in a session client id */
|
||||||
|
id = g_getenv("DESKTOP_AUTOSTART_ID");
|
||||||
|
if (id) {
|
||||||
|
unsetenv("DESKTOP_AUTOSTART_ID");
|
||||||
|
if (ob_sm_id) g_free(ob_sm_id);
|
||||||
|
ob_sm_id = g_strdup(id);
|
||||||
|
ob_debug_type(OB_DEBUG_SM,
|
||||||
|
"DESKTOP_AUTOSTART_ID %s supercedes --sm-client-id\n",
|
||||||
|
ob_sm_id);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void parse_args(gint *argc, gchar **argv)
|
static void parse_args(gint *argc, gchar **argv)
|
||||||
|
|
Loading…
Reference in a new issue