diff --git a/src/input/udev.c b/src/input/udev.c index aa1c6e0..6541ff1 100644 --- a/src/input/udev.c +++ b/src/input/udev.c @@ -91,10 +91,11 @@ void udev_init(bool autoload, struct mapping* mappings, bool verbose, int rotate defaultMappings = mappings; inputRotate = rotate; - int udev_fd = udev_monitor_get_fd(udev_mon); - loop_add_fd(udev_fd, &udev_handle, POLLIN); + loop_add_fd(udev_monitor_get_fd(udev_mon), &udev_handle, POLLIN); } -void evdev_destroy() { +void udev_destroy() { + loop_remove_fd(udev_monitor_get_fd(udev_mon)); + udev_monitor_unref(udev_mon); udev_unref(udev); } diff --git a/src/input/udev.h b/src/input/udev.h index 0697741..9e83d51 100644 --- a/src/input/udev.h +++ b/src/input/udev.h @@ -20,4 +20,4 @@ #include "mapping.h" void udev_init(bool autoload, struct mapping* mappings, bool verbose, int rotate); -void evdev_destroy(); +void udev_destroy();