wine/dlls/winebus.sys
Tuomas Räsänen ef58b8c770 winebus: Ignore udev events of devices which do not have devnodes.
Udev monitor monitors the whole input subsystem, but not all devices
in the input subsystem have devnodes associated to them.

This commit makes the event processing ignore such devices.

All device handling assumes devices have devnodes, so here we just
simply ignore all devices which do not have one.

Previously, udev bus thread aborted when an event for a device without
a devnode was processed:

  10111.330:0068:0084:trace:hid:process_monitor_event Received action "remove" for udev device (null)
  10111.330:0068:0084:warn:hid:bus_main_thread L"UDEV" bus wait returned status 0xc0000005

Just plugging in and out a normal mouse was enough cause this.

This was because root input devices (which do not have devnodes) were
handled too and find_device_from_devnode() choked on NULL argument.
2024-03-26 22:26:51 +01:00
..
bus_iohid.c winebus: Add HID usages in the device descriptor when possible. 2024-03-19 23:02:11 +01:00
bus_sdl.c winebus: Add HID usages in the device descriptor when possible. 2024-03-19 23:02:11 +01:00
bus_udev.c winebus: Ignore udev events of devices which do not have devnodes. 2024-03-26 22:26:51 +01:00
hid.c winebus.sys: Use 4 bits for hat switches. 2024-01-30 23:03:38 +01:00
main.c winebus: Remove devices that are ignored wrt hidraw preferences. 2024-03-19 23:02:11 +01:00
Makefile.in makefiles: Always use the global SOURCES variable for .rc files. 2023-11-01 22:43:56 +01:00
pop_hid_macros.h
psh_hid_macros.h
unix_private.h winebus: Move device identification helpers to unixlib.h. 2024-01-18 18:08:48 +01:00
unixlib.c winebus: Move device identification helpers to unixlib.h. 2024-01-18 18:08:48 +01:00
unixlib.h winebus: Add HID usages in the device descriptor when possible. 2024-03-19 23:02:11 +01:00
winebus.inf
winebus.rc