800
801
g_debug ("GsmAutostartApp: starting %s: command=%s startup-id=%s", app->priv->desktop_id, command, startup_id);
803
// don't start gnome-panel, metacity/compiz/mutter from saved session in
804
// default ubuntu session
805
// This is a current workaround to bug #578585. A correct fix
806
// will be to integrate a migration path, excluding all
807
// required_components from the saved list before starting them.
808
if (g_strcmp0 (g_getenv ("GDMSESSION"), "gnome\0") == 0) {
809
if (g_strrstr (command, "gnome-panel --sm-client-id\0")
810
|| g_strrstr (command, "metacity\0")
811
|| g_strrstr (command, "mutter\0")
812
|| g_strrstr (command, "compiz --sm-client-id\0")) {
813
g_debug ("GsmAutostartApp: %s BLACKLISTED in ubuntu session", command);
801
819
g_free (command);
803
821
g_free (app->priv->startup_id);
804
822
local_error = NULL;
805
success = egg_desktop_file_launch (app->priv->desktop_file,
808
EGG_DESKTOP_FILE_LAUNCH_PUTENV, env,
809
EGG_DESKTOP_FILE_LAUNCH_FLAGS, G_SPAWN_DO_NOT_REAP_CHILD,
810
EGG_DESKTOP_FILE_LAUNCH_RETURN_PID, &app->priv->pid,
811
EGG_DESKTOP_FILE_LAUNCH_RETURN_STARTUP_ID, &app->priv->startup_id,
824
success = egg_desktop_file_launch (app->priv->desktop_file,
827
EGG_DESKTOP_FILE_LAUNCH_PUTENV, env,
828
EGG_DESKTOP_FILE_LAUNCH_FLAGS, G_SPAWN_DO_NOT_REAP_CHILD,
829
EGG_DESKTOP_FILE_LAUNCH_RETURN_PID, &app->priv->pid,
830
EGG_DESKTOP_FILE_LAUNCH_RETURN_STARTUP_ID, &app->priv->startup_id,
818
837
(GChildWatchFunc)app_exited,
824
"Unable to start application: %s", local_error->message);
825
g_error_free (local_error);
844
"Unable to start application: %s", local_error->message);
845
g_error_free (local_error);