[systemd-devel] [PATCH 1/6] udev: builtin-keyboard: move fetching the device node up

David Herrmann dh.herrmann at gmail.com
Tue Apr 7 02:32:05 PDT 2015


Hi

On Mon, Mar 23, 2015 at 2:30 AM, Peter Hutterer
<peter.hutterer at who-t.net> wrote:
> 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.
> ---
>  src/udev/udev-builtin-keyboard.c | 17 +++++++++--------
>  1 file changed, 9 insertions(+), 8 deletions(-)
>
> diff --git a/src/udev/udev-builtin-keyboard.c b/src/udev/udev-builtin-keyboard.c
> index 8ab1be8..b7c8791 100644
> --- a/src/udev/udev-builtin-keyboard.c
> +++ b/src/udev/udev-builtin-keyboard.c
> @@ -71,6 +71,14 @@ 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);
> +

Please drop that newline. Otherwise looks good, please push!

Thanks
David

> +        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;
> @@ -124,17 +132,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;
> --
> 2.3.2
>


More information about the systemd-devel mailing list