From 4016be5ae70f34be7551b40414eb0ebebf16a0ab Mon Sep 17 00:00:00 2001 From: Simon McVittie Date: Wed, 24 Aug 2011 15:08:27 +0100 Subject: [PATCH] Don't assume that X11 autolaunch will work if DISPLAY is unset In practice, it won't; other forms of autolaunch (like Mac OS launchd) might, but we can't really assert either way. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=40352 --- test/name-test/test-autolaunch.c | 7 ++++--- 1 files changed, 4 insertions(+), 3 deletions(-) diff --git a/test/name-test/test-autolaunch.c b/test/name-test/test-autolaunch.c index 5e51989..07cc1b7 100644 --- a/test/name-test/test-autolaunch.c +++ b/test/name-test/test-autolaunch.c @@ -21,14 +21,16 @@ main (int argc, char *argv[]) conn = dbus_bus_get (DBUS_BUS_SESSION, &error); #ifdef DBUS_ENABLE_X11_AUTOLAUNCH - if (dbus_error_is_set (&error)) + /* If X11 autolaunch was enabled, we expect dbus-launch to have worked. */ + if (_dbus_getenv ("DISPLAY") != NULL && dbus_error_is_set (&error)) { fprintf (stderr, "*** Failed to autolaunch session bus: %s\n", error.message); dbus_error_free (&error); return 1; } -#else +#endif + /* We don't necessarily expect it to *work* without X (although it might - * for instance on Mac OS it might have used launchd). Just check that the * results are consistent. */ @@ -38,7 +40,6 @@ main (int argc, char *argv[]) fprintf (stderr, "*** Autolaunched session bus, but an error was set!\n"); return 1; } -#endif if (!dbus_error_is_set (&error) && conn == NULL) { -- 1.7.5.4