summaryrefslogtreecommitdiff
path: root/test/dbus-daemon.c
diff options
context:
space:
mode:
Diffstat (limited to 'test/dbus-daemon.c')
-rw-r--r--test/dbus-daemon.c19
1 files changed, 18 insertions, 1 deletions
diff --git a/test/dbus-daemon.c b/test/dbus-daemon.c
index 22ea23e3..4b3b61e5 100644
--- a/test/dbus-daemon.c
+++ b/test/dbus-daemon.c
@@ -119,6 +119,8 @@ spawn_dbus_daemon (gchar *binary,
if (newline != NULL)
{
+ if ((newline > address->str) && ('\r' == newline[-1]))
+ newline -= 1;
g_string_truncate (address, newline - address->str);
break;
}
@@ -194,6 +196,14 @@ setup (Fixture *f,
if (config != NULL && config->config_file != NULL)
{
+ if (g_getenv ("DBUS_TEST_DAEMON_ADDRESS") != NULL)
+ {
+ g_message ("SKIP: cannot use DBUS_TEST_DAEMON_ADDRESS for "
+ "unusally-configured dbus-daemon");
+ f->skip = TRUE;
+ return;
+ }
+
if (g_getenv ("DBUS_TEST_DATA") == NULL)
{
g_message ("SKIP: set DBUS_TEST_DATA to a directory containing %s",
@@ -227,7 +237,14 @@ setup (Fixture *f,
if (dbus_daemon == NULL)
dbus_daemon = g_strdup ("dbus-daemon");
- address = spawn_dbus_daemon (dbus_daemon, arg, &f->daemon_pid);
+ if (g_getenv ("DBUS_TEST_DAEMON_ADDRESS") != NULL)
+ {
+ address = g_strdup (g_getenv ("DBUS_TEST_DAEMON_ADDRESS"));
+ }
+ else
+ {
+ address = spawn_dbus_daemon (dbus_daemon, arg, &f->daemon_pid);
+ }
g_free (dbus_daemon);
g_free (arg);