X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=udev%2Fudevadm.c;h=2a2915891797dcba2b17940ed7db701722b7e7e4;hb=7236c6c40a730d053141d9fe797dc65dc2ecd1f1;hp=00c2350d356717812034cb5cef1be673cea1ff3e;hpb=1d67ec16c44711bbfb50ac7dd8bb2fb6e64a80f3;p=elogind.git diff --git a/udev/udevadm.c b/udev/udevadm.c index 00c2350d3..2a2915891 100644 --- a/udev/udevadm.c +++ b/udev/udevadm.c @@ -25,7 +25,7 @@ #include "udev.h" -static int debug; +static bool debug; static void log_fn(struct udev *udev, int priority, const char *file, int line, const char *fn, @@ -35,7 +35,11 @@ static void log_fn(struct udev *udev, int priority, fprintf(stderr, "%s: ", fn); vfprintf(stderr, format, args); } else { - vfprintf(stderr, format, args); + va_list args2; + + va_copy(args2, args); + vfprintf(stderr, format, args2); + va_end(args2); vsyslog(priority, format, args); } } @@ -97,7 +101,7 @@ static const struct command cmds[] = { .name = "test", .cmd = udevadm_test, .help = "simulation run", - .debug = 1, + .debug = true, }, { .name = "version", @@ -113,7 +117,7 @@ static const struct command cmds[] = { static int run_command(struct udev *udev, const struct command *cmd, int argc, char *argv[]) { if (cmd->debug) { - debug = 1; + debug = true; if (udev_get_log_priority(udev) < LOG_INFO) udev_set_log_priority(udev, LOG_INFO); } @@ -142,7 +146,7 @@ int main(int argc, char *argv[]) udev_set_log_fn(udev, log_fn); udev_selinux_init(udev); - while (1) { + for (;;) { int option; option = getopt_long(argc, argv, "+dhV", options, NULL); @@ -151,7 +155,7 @@ int main(int argc, char *argv[]) switch (option) { case 'd': - debug = 1; + debug = true; if (udev_get_log_priority(udev) < LOG_INFO) udev_set_log_priority(udev, LOG_INFO); break; @@ -167,6 +171,8 @@ int main(int argc, char *argv[]) } command = argv[optind]; + info(udev, "runtime dir '%s'\n", udev_get_run_path(udev)); + if (command != NULL) for (i = 0; cmds[i].cmd != NULL; i++) { if (strcmp(cmds[i].name, command) == 0) {