Revert "dbus-launch: add --exit-with-x11 option"
authorSimon McVittie <simon.mcvittie@collabora.co.uk>
Wed, 27 Jun 2012 10:31:22 +0000 (11:31 +0100)
committerSimon McVittie <simon.mcvittie@collabora.co.uk>
Wed, 27 Jun 2012 10:31:22 +0000 (11:31 +0100)
This reverts commit fcc656d430f53ad62c25e41d7e7bd880cbb726a0.

doc/dbus-launch.1
tools/dbus-launch.c

index 4902b40..e4341e5 100644 (file)
@@ -7,7 +7,7 @@
 dbus\-launch \- Utility to start a message bus from a shell script
 .SH SYNOPSIS
 .PP
-.B dbus\-launch [\-\-version] [\-\-sh\-syntax] [\-\-csh\-syntax] [\-\-auto\-syntax] [\-\-exit\-with\-session] [\-\-exit\-with\-x11] [\-\-autolaunch=MACHINEID] [\-\-config\-file=FILENAME] [PROGRAM] [ARGS...]
+.B dbus\-launch [\-\-version] [\-\-sh\-syntax] [\-\-csh\-syntax] [\-\-auto\-syntax] [\-\-exit\-with\-session] [\-\-autolaunch=MACHINEID] [\-\-config\-file=FILENAME] [PROGRAM] [ARGS...]
 
 .SH DESCRIPTION
 
@@ -167,25 +167,11 @@ the \-\-session argument. See the man page for dbus\-daemon
 Emit csh compatible code to set up environment variables.
 
 .TP
-.I \-\-exit\-with\-x11
-If this option is provided, a persistent "babysitter" process will be
-created, and will connect to the X server. If it cannot do so, launching
-fails. If the "babysitter" process loses its X connection,
-it kills the message bus daemon, disconnecting all of its clients (which
-should exit in response). This avoids having leftover daemon
-processes from a user X session, after the X session has ended.
-
-.TP
-.I \-\-exit\-with\-session
-If this option is provided, a persistent "babysitter" process will be
-created, as if for
-.BR \-\-exit\-with\-x11 .
-If it cannot connect to the X server, it will monitor the terminal from which
-.B dbus-launch
-was started instead, and if it gets a HUP on stdin, the message bus daemon
-will be killed. This option is not recommended, since it will consume input
-from the terminal where it was started; it is mainly provided for
-backwards compatibility.
+.I "\-\-exit\-with\-session"
+If this option is provided, a persistent "babysitter" process will be 
+created that watches stdin for HUP and tries to connect to the X
+server. If this process gets a HUP on stdin or loses its X connection,
+it kills the message bus daemon.
 
 .TP
 .I "\-\-autolaunch=MACHINEID"
index dcce646..1ec9ae5 100644 (file)
@@ -181,7 +181,7 @@ verbose (const char *format,
 static void
 usage (int ecode)
 {
-  fprintf (stderr, "dbus-launch [--version] [--help] [--sh-syntax] [--csh-syntax] [--auto-syntax] [--exit-with-session] [--exit-with-x11]\n");
+  fprintf (stderr, "dbus-launch [--version] [--help] [--sh-syntax] [--csh-syntax] [--auto-syntax] [--exit-with-session]\n");
   exit (ecode);
 }
 
@@ -809,7 +809,6 @@ main (int argc, char **argv)
   const char *runprog = NULL;
   int remaining_args = 0;
   int exit_with_session;
-  int exit_with_x11 = FALSE;
   int binary_syntax = FALSE;
   int c_shell_syntax = FALSE;
   int bourne_shell_syntax = FALSE;
@@ -851,8 +850,6 @@ main (int argc, char **argv)
         version ();
       else if (strcmp (arg, "--exit-with-session") == 0)
         exit_with_session = TRUE;
-      else if (strcmp (arg, "--exit-with-x11") == 0)
-        exit_with_x11 = TRUE;
       else if (strcmp (arg, "--close-stderr") == 0)
         close_stderr = TRUE;
       else if (strstr (arg, "--autolaunch=") == arg)
@@ -964,9 +961,6 @@ main (int argc, char **argv)
   if (exit_with_session)
     verbose ("--exit-with-session enabled\n");
 
-  if (exit_with_x11)
-    verbose ("--exit-with-x11 enabled\n");
-
   if (autolaunch)
     {      
 #ifndef DBUS_BUILD_X11
@@ -989,10 +983,10 @@ main (int argc, char **argv)
         }
 
       verbose ("Autolaunch enabled (using X11).\n");
-      if (!exit_with_x11)
+      if (!exit_with_session)
        {
-          verbose ("--exit-with-x11 automatically enabled\n");
-          exit_with_x11 = TRUE;
+         verbose ("--exit-with-session automatically enabled\n");
+         exit_with_session = TRUE;
        }
 
       if (!x11_init ())
@@ -1015,27 +1009,12 @@ main (int argc, char **argv)
          exit (0);
        }
 #endif /* DBUS_ENABLE_X11_AUTOLAUNCH */
-#endif /* DBUS_BUILD_X11 */
-    }
-  else if (exit_with_x11)
-    {
-#ifndef DBUS_BUILD_X11
-      fprintf (stderr, "Session lifetime based on X11 requested, but X11 support not compiled in.\n");
-      exit (1);
-#else /* DBUS_BUILD_X11 */
-      if (!x11_init ())
-        {
-          fprintf (stderr, "Session lifetime based on X11 requested, but X11 initialization failed.\n");
-          exit (1);
-        }
-#endif /* DBUS_BUILD_X11 */
     }
-#ifdef DBUS_BUILD_X11
   else if (read_machine_uuid_if_needed())
     {
       x11_init();
-    }
 #endif /* DBUS_BUILD_X11 */
+    }
 
 
   if (pipe (bus_pid_to_launcher_pipe) < 0 ||
@@ -1097,7 +1076,7 @@ main (int argc, char **argv)
            * and will also reap the pre-forked bus
            * daemon
            */
-          babysit (exit_with_session || exit_with_x11, ret,
+          babysit (exit_with_session, ret,
                    bus_pid_to_babysitter_pipe[READ_END]);
           exit (0);
         }