mirror of
https://gitlab.freedesktop.org/dbus/dbus.git
synced 2025-12-27 15:00:09 +01:00
* dbus/dbus-errors.c: (dbus_set_error): * dbus/dbus-errors.h: Add a few errors and make dbus_set_error void. * dbus/dbus-sysdeps.c: (_dbus_errno_to_string), (close_and_invalidate), (make_pipe), (write_err_and_exit), (read_ints), (do_exec), (_dbus_spawn_async): * dbus/dbus-sysdeps.h: Add _dbus_spawn_async. * test/spawn-test.c: (main): Test for _dbus_spawn_async.
34 lines
662 B
C
34 lines
662 B
C
#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;
|
|
}
|