Hello!
I started getting seemingly random device disconnects in games / in wine control joy.cpl - for 10-20 seconds it's working perfectly fine and after some time input is not registering and new devices are not appearing.
From logs i found this:
PROTON_LOG=1 WINEDEBUG="+dbus" protontrics -c "wine control joy.cpl" 1066890
00e4:trace:dbus:bluez_filter ({0x7f248014baf0 connected=1}, {signal sender=":1.5" interface="org.freedesktop.DBus.Properties" member="PropertiesChanged" path="/org/bluez/hci0" signature="sa{sv}as"}, 0x7f248007ccb0)
00e4:trace:dbus:bluez_radio_prop_from_dict_entry ("Discovering", 0x100ffe490, 0x100ffe4e8, 0x100ffe4e0, 0x3fd)
dbus[58589]: arguments to dbus_pending_call_set_notify() were incorrect, assertion "pending != NULL" failed in file ../../../dbus/dbus-pending-call.c line 655.
This is normally a bug in some application using the D-Bus library.
D-Bus not built with -rdynamic so unable to print a backtrace
00e4:err:seh:call_seh_handlers invalid frame 0000000100FFDF60 (00000000026E2000-00000000028E0000)
00e4:err:seh:NtRaiseException Exception frame is not in stack limits => unable to dispatch exception.
And after that log i identified that my 'random' disconnects / stops of input handling are tied to bluez discovery interval. Disabling bluez lead to perfectly fine session in games / long enough staring at joy.cpl screen, but some games (simracing titles) are easier to play with wireless keyboard on the side, so it's not exactly ideal solution...
sudo dbus-monitor --system "path='/org/bluez/hci0'"
signal time=1772316172.954428 sender=:1.5 -> destination=(null destination) serial=1851 path=/org/bluez/hci0; interface=org.freedesktop.DBus.Properties; member=PropertiesChanged
string "org.bluez.Adapter1"
array [
dict entry(
string "Discovering"
variant boolean false
)
]
array [
]
...
method call time=1772316192.825234 sender=:1.66 -> destination=org.bluez serial=1940 path=/org/bluez/hci0; interface=org.bluez.Adapter1; member=StartDiscovery
signal time=1772316192.940475 sender=:1.5 -> destination=(null destination) serial=1858 path=/org/bluez/hci0; interface=org.freedesktop.DBus.Properties; member=PropertiesChanged
string "org.bluez.Adapter1"
array [
dict entry(
string "Discovering"
variant boolean true
)
]
array [
]
After digging some more, i found that there is a bug present in Proton version of Wine: it tries to notify dbus with NULL pending_call argument, seemingly crashing the input handling (and something else?), and it's fixed in upstream wine (https://gitlab.winehq.org/wine/wine/-/merge_requests/7302). Also there is a bunch of updates in winebth (https://gitlab.winehq.org/wine/wine/-/commits/master/dlls/winebth.sys), for almost a year.
Can you, please, update winebth.sys code, or at least cherry-pick https://gitlab.winehq.org/wine/wine/-/merge_requests/7302/diffs?commit_id=e79bf8390d93efedbc2c99d73450fd24c4877b94, so playing games with controllers with bluetooth enabled will be possible again?
Hello!
I started getting seemingly random device disconnects in games / in
wine control joy.cpl- for 10-20 seconds it's working perfectly fine and after some time input is not registering and new devices are not appearing.From logs i found this:
PROTON_LOG=1 WINEDEBUG="+dbus" protontrics -c "wine control joy.cpl" 1066890And after that log i identified that my 'random' disconnects / stops of input handling are tied to bluez discovery interval. Disabling bluez lead to perfectly fine session in games / long enough staring at
joy.cplscreen, but some games (simracing titles) are easier to play with wireless keyboard on the side, so it's not exactly ideal solution...sudo dbus-monitor --system "path='/org/bluez/hci0'"After digging some more, i found that there is a bug present in Proton version of Wine: it tries to notify dbus with NULL pending_call argument, seemingly crashing the input handling (and something else?), and it's fixed in upstream wine (https://gitlab.winehq.org/wine/wine/-/merge_requests/7302). Also there is a bunch of updates in winebth (https://gitlab.winehq.org/wine/wine/-/commits/master/dlls/winebth.sys), for almost a year.
Can you, please, update winebth.sys code, or at least cherry-pick https://gitlab.winehq.org/wine/wine/-/merge_requests/7302/diffs?commit_id=e79bf8390d93efedbc2c99d73450fd24c4877b94, so playing games with controllers with bluetooth enabled will be possible again?