From: Peter Hutterer Date: Thu, 24 Oct 2024 04:47:38 +0000 (+1000) Subject: pad: don't clobber the errno if the pad led failed to initialize X-Git-Tag: 1.27.0~20 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=7ae4fabb76f4fd3e833a445996afad695d821e30;p=platform%2Fupstream%2Flibinput.git pad: don't clobber the errno if the pad led failed to initialize pad_led_destroy() may call something that sets errno, so let's protect against that. Part-of: --- diff --git a/src/evdev-tablet-pad-leds.c b/src/evdev-tablet-pad-leds.c index bcb41644..9037d20d 100644 --- a/src/evdev-tablet-pad-leds.c +++ b/src/evdev-tablet-pad-leds.c @@ -104,7 +104,7 @@ pad_led_new(struct libinput *libinput, const char *prefix, int group, int mode) { struct pad_mode_led *led; char path[PATH_MAX]; - int rc, fd; + int rc, fd, save_errno; led = zalloc(sizeof *led); led->brightness_fd = -1; @@ -133,7 +133,9 @@ pad_led_new(struct libinput *libinput, const char *prefix, int group, int mode) return led; error: + save_errno = errno; pad_led_destroy(libinput, led); + errno = save_errno; return NULL; } #endif /* HAVE_LIBWACOM */