chiark / gitweb /
collect, keymap, systemctl: use _noreturn_
[elogind.git] / src / udev / keymap / keymap.c
index cc37a9b8c21d4fd64edb08b8ac860b424e7dbd0e..6dc9c2d200b7ab9245217b9bc35029146a641dc6 100644 (file)
@@ -40,6 +40,8 @@ const struct key* lookup_key (const char *str, unsigned int len);
 
 #include "keys-from-name.h"
 #include "keys-to-name.h"
+#include "macro.h"
+#include "util.h"
 
 #define MAX_SCANCODES 1024
 
@@ -48,7 +50,7 @@ static int evdev_open(const char *dev)
         int fd;
         char fn[PATH_MAX];
 
-        if (strncmp(dev, "/dev", 4) != 0) {
+        if (!startswith(dev, "/dev")) {
                 snprintf(fn, sizeof(fn), "/dev/%s", dev);
                 dev = fn;
         }
@@ -345,7 +347,7 @@ static void interactive(int fd)
         ioctl(fd, EVIOCGRAB, 0);
 }
 
-static void help(int error)
+_noreturn_ static void help(int error)
 {
         const char* h = "Usage: keymap <event device> [<map file>]\n"
                         "       keymap <event device> scancode keyname [...]\n"
@@ -409,7 +411,7 @@ int main(int argc, char **argv)
                 const char *filearg = argv[optind+1];
                 if (strchr(filearg, '/')) {
                         /* Keymap file argument is a path */
-                        FILE *f = fopen(filearg, "r");
+                        FILE *f = fopen(filearg, "re");
                         if (f)
                                 merge_table(fd, f);
                         else
@@ -420,12 +422,12 @@ int main(int argc, char **argv)
                         char keymap_path[PATH_MAX];
                         FILE *f;
                         snprintf(keymap_path, sizeof(keymap_path), "%s%s", SYSCONFDIR "/udev/keymaps/", filearg);
-                        f = fopen(keymap_path, "r");
+                        f = fopen(keymap_path, "re");
                         if (f) {
                                 merge_table(fd, f);
                         } else {
                                 snprintf(keymap_path, sizeof(keymap_path), "%s%s", UDEVLIBEXECDIR "/keymaps/", filearg);
-                                f = fopen(keymap_path, "r");
+                                f = fopen(keymap_path, "re");
                                 if (f)
                                         merge_table(fd, f);
                                 else