udev: builtin-keyboard: move fetching the device node up

No point parsing the properties if we can't get the devnode to apply them
later. Plus, this makes future additions easier to slot in.

Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
This commit is contained in:
Peter Hutterer 2015-03-20 12:48:24 +10:00 committed by Anthony G. Basile
parent 206d05759f
commit accc92a8ad

View File

@ -75,6 +75,13 @@ static int builtin_keyboard(struct udev_device *dev, int argc, char *argv[], boo
unsigned map_count = 0;
unsigned release[1024];
unsigned release_count = 0;
const char *node;
node = udev_device_get_devnode(dev);
if (!node) {
log_error("Error, no device node for '%s'", udev_device_get_syspath(dev));
return EXIT_FAILURE;
}
udev_list_entry_foreach(entry, udev_device_get_properties_list_entry(dev)) {
const char *key;
@ -128,17 +135,10 @@ static int builtin_keyboard(struct udev_device *dev, int argc, char *argv[], boo
}
if (map_count > 0 || release_count > 0) {
const char *node;
int fd;
unsigned i;
node = udev_device_get_devnode(dev);
if (!node) {
log_error("Error, no device node for '%s'", udev_device_get_syspath(dev));
return EXIT_FAILURE;
}
fd = open(udev_device_get_devnode(dev), O_RDWR|O_CLOEXEC|O_NONBLOCK|O_NOCTTY);
fd = open(node, O_RDWR|O_CLOEXEC|O_NONBLOCK|O_NOCTTY);
if (fd < 0) {
log_error_errno(errno, "Error, opening device '%s': %m", node);
return EXIT_FAILURE;