chiark / gitweb /
logind: remove unused session->closing field
[elogind.git] / src / udev / udevadm.c
index fafa31bba45a0e7a75d097a9d283e35faabf7002..e14b3ca27c0248f9c063a38f13e65f1e872a7846 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2007-2012 Kay Sievers <kay.sievers@vrfy.org>
+ * Copyright (C) 2007-2012 Kay Sievers <kay@vrfy.org>
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -56,6 +56,7 @@ static const struct udevadm_cmd *udevadm_cmds[] = {
         &udevadm_settle,
         &udevadm_control,
         &udevadm_monitor,
+        &udevadm_hwdb,
         &udevadm_test,
         &udevadm_test_builtin,
         &udevadm_version,
@@ -91,7 +92,6 @@ int main(int argc, char *argv[])
                 { "version", no_argument, NULL, 'V' },
                 {}
         };
-        const char *prefixes[] = { "/dev", "/run", NULL };
         const char *command;
         unsigned int i;
         int rc = 1;
@@ -100,11 +100,10 @@ int main(int argc, char *argv[])
         if (udev == NULL)
                 goto out;
 
-        log_open();
         log_parse_environment();
+        log_open();
         udev_set_log_fn(udev, udev_main_log);
-
-        label_init(prefixes);
+        label_init("/dev");
 
         for (;;) {
                 int option;
@@ -132,9 +131,10 @@ int main(int argc, char *argv[])
 
         if (command != NULL)
                 for (i = 0; i < ELEMENTSOF(udevadm_cmds); i++) {
-                        if (strcmp(udevadm_cmds[i]->name, command) == 0) {
+                        if (streq(udevadm_cmds[i]->name, command)) {
                                 argc -= optind;
                                 argv += optind;
+                                /* we need '0' here to reset the internal state */
                                 optind = 0;
                                 rc = run_command(udev, udevadm_cmds[i], argc, argv);
                                 goto out;