Index: xfce4-session-4.4.3/xfce4-session/xfsm-compat-gnome.c =================================================================== --- xfce4-session-4.4.3.orig/xfce4-session/xfsm-compat-gnome.c 2009-01-13 14:04:17.000000000 -0500 +++ xfce4-session-4.4.3/xfce4-session/xfsm-compat-gnome.c 2009-01-13 14:05:06.000000000 -0500 @@ -67,73 +67,9 @@ #endif -static pid_t gnome_keyring_daemon_pid = 0; static Window gnome_smproxy_window = None; -static void -gnome_keyring_daemon_startup (void) -{ - GError *error = NULL; - gchar *sout; - gchar **lines; - gint status; - long pid; - gchar *pid_str; - gchar *end; - - // FIXME: use async spawn! - g_spawn_command_line_sync ("gnome-keyring-daemon", - &sout, NULL, &status, &error); - - if (error != NULL) - { - g_printerr ("Failed to run gnome-keyring-daemon: %s\n", - error->message); - g_error_free (error); - } - else - { - if (WIFEXITED (status) && WEXITSTATUS (status) == 0 && sout != NULL) - { - lines = g_strsplit (sout, "\n", 3); - - if (lines[0] != NULL && lines[1] != NULL - && g_str_has_prefix (lines[1], "GNOME_KEYRING_PID=")) - { - pid_str = lines[1] + strlen ("GNOME_KEYRING_PID="); - pid = strtol (pid_str, &end, 10); - - if (end != pid_str) - { - gnome_keyring_daemon_pid = pid; - xfce_putenv (lines[0]); - } - } - - g_strfreev (lines); - } - else - { - /* daemon failed for some reason */ - g_printerr ("gnome-keyring-daemon failed to start correctly, " - "exit code: %d\n", WEXITSTATUS (status)); - } - - g_free (sout); - } -} - -static void -gnome_keyring_daemon_shutdown (void) -{ - if (gnome_keyring_daemon_pid != 0) - { - kill (gnome_keyring_daemon_pid, SIGTERM); - gnome_keyring_daemon_pid = 0; - } -} - #ifdef HAVE_GNOME static void @@ -239,11 +175,6 @@ { xfsm_compat_gnome_smproxy_startup (); - /* fire up the keyring daemon */ - if (G_LIKELY (splash != NULL)) - xfsm_splash_screen_next (splash, _("Starting The Gnome Keyring Daemon")); - gnome_keyring_daemon_startup (); - #ifdef HAVE_GNOME /* connect to the GConf daemon */ gnome_conf_client = gconf_client_get_default (); @@ -269,9 +200,6 @@ GError *error = NULL; gint status; - /* shutdown the keyring daemon */ - gnome_keyring_daemon_shutdown (); - #ifdef HAVE_GNOME if (gnome_conf_client != NULL) {