From b481170918c5a5d5bb81f06823c3ab58ea469c87 Mon Sep 17 00:00:00 2001 From: Peter Hutterer Date: Thu, 24 Apr 2025 10:07:35 +1000 Subject: [PATCH] evdev: use autofree for the sysname Part-of: --- src/evdev.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/src/evdev.c b/src/evdev.c index 770b270e..5fe9c337 100644 --- a/src/evdev.c +++ b/src/evdev.c @@ -2385,7 +2385,7 @@ evdev_device_create(struct libinput_seat *seat, int fd = -1; int unhandled_device = 0; const char *devnode = udev_device_get_devnode(udev_device); - char *sysname = str_sanitize(udev_device_get_sysname(udev_device)); + _autofree_ char *sysname = str_sanitize(udev_device_get_sysname(udev_device)); if (!devnode) { log_info(libinput, "%s: no device node associated\n", sysname); @@ -2415,8 +2415,7 @@ evdev_device_create(struct libinput_seat *seat, goto err; device = zalloc(sizeof *device); - device->sysname = sysname; - sysname = NULL; + device->sysname = steal(&sysname); libinput_device_init(&device->base, seat); libinput_seat_ref(seat); @@ -2490,8 +2489,6 @@ err: } } - free(sysname); - return unhandled_device ? EVDEV_UNHANDLED_DEVICE : NULL; }