Memory leak with libinput_suspend in udev seats
Moved out from !213 (merged) because this may require more debugging. Below can be reproduced when building with meson ... -Db_sanitize=address
but it's a bit of a heisenbug and seems to happen in other tests depending on the weather. Indicates a race condition somewhere with device removal.
================================================================
==25835==ERROR: LeakSanitizer: detected memory leaks
Direct leak of 112 byte(s) in 2 object(s) allocated from:
#0 0x7ff9fbc203a6 in __interceptor_calloc (/lib64/libasan.so.5+0x10e3a6)
#1 0x7ff9fba89523 in zalloc ../src/libinput-util.h:157
#2 0x7ff9fba991b7 in tp_dwt_pair_keyboard ../src/evdev-mt-touchpad.c:2375
#3 0x7ff9fba99d18 in tp_interface_device_added ../src/evdev-mt-touchpad.c:2535
#4 0x7ff9fba75075 in evdev_notify_added_device ../src/evdev.c:1824
#5 0x7ff9fba76995 in evdev_device_create ../src/evdev.c:2110
#6 0x7ff9fbaca600 in device_added ../src/udev-seat.c:85
#7 0x7ff9fbacaa04 in udev_input_add_devices ../src/udev-seat.c:164
#8 0x7ff9fbacb218 in udev_input_enable ../src/udev-seat.c:274
#9 0x7ff9fbacb733 in libinput_udev_assign_seat ../src/udev-seat.c:411
#10 0x42d7f1 in udev_suspend_resume ../test/test-udev.c:395
#11 0x7ff9fb88f744 in srunner_run_tagged (/lib64/libcheck.so.0+0x6744)
cc @jigpu