summaryrefslogtreecommitdiffstats
path: root/test/spawn-test.c
diff options
context:
space:
mode:
Diffstat (limited to 'test/spawn-test.c')
-rw-r--r--test/spawn-test.c34
1 files changed, 34 insertions, 0 deletions
diff --git a/test/spawn-test.c b/test/spawn-test.c
new file mode 100644
index 00000000..fda0309b
--- /dev/null
+++ b/test/spawn-test.c
@@ -0,0 +1,34 @@
+#include <dbus/dbus.h>
+
+#define DBUS_COMPILATION /* cheat and use dbus-sysdeps */
+#include <dbus/dbus-sysdeps.h>
+#undef DBUS_COMPILATION
+#include <stdio.h>
+
+int
+main (int argc, char **argv)
+{
+ char **argv_copy;
+ int i;
+ DBusError error;
+
+ if (argc < 2)
+ {
+ fprintf (stderr, "You need to specify a program to launch.\n");
+
+ return -1;
+ }
+
+ argv_copy = dbus_new (char *, argc);
+ for (i = 0; i < argc - 1; i++)
+ argv_copy [i] = argv[i + 1];
+ argv_copy[argc - 1] = NULL;
+
+ if (!_dbus_spawn_async (argv_copy, &error))
+ {
+ fprintf (stderr, "Could not launch application: \"%s\"\n",
+ error.message);
+ }
+
+ return 0;
+}