[Bug 59986] New: After MR 11313 and 11329 mouse sometimes acting weird
http://bugs.winehq.org/show_bug.cgi?id=59986 Bug ID: 59986 Summary: After MR 11313 and 11329 mouse sometimes acting weird Product: Wine Version: unspecified Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown Assignee: wine-bugs@list.winehq.org Reporter: l12436.tw@gmail.com Target Milestone: --- Distribution: --- When I open windows steam, sometimes left click,right click will be trigger even I did not do anything. This also happened when window is on the background. This is no happened after revert 21f24279eea959a8ece2503fb6ce1300aabc957f/680a67ce3463344975dd8374594506effd60f908 which is My previous branch test for fixing mouse -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=59986 --- Comment #1 from TOM <l12436.tw@gmail.com> --- Also After I downgrade to the old mouse revert branch, I just realize that Running FlashBreak, left click did not working seems also similar issue. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=59986 --- Comment #2 from TOM <l12436.tw@gmail.com> --- I just tested, It seems from the MR 11329 itself cause those weird action. after checkout before MR 11329 commit, it all became normal. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=59986 --- Comment #3 from TOM <l12436.tw@gmail.com> --- basic revert c58fa05ab3b53b7c0906a8602a66b563536f80ec this will make it not happened. but This should also break the main fix for raw input -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=59986 --- Comment #4 from TOM <l12436.tw@gmail.com> --- sorry I input wrong commit hash, its 08f7b746b00c07312a70d2f978d86bc80e6df88a -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=59986 --- Comment #5 from TOM <l12436.tw@gmail.com> --- In accum_mouse_motion, you seems not guard when data is over 64, if it over 64, it will cause buffer overflow. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=59986 --- Comment #6 from TOM <l12436.tw@gmail.com> --- Or the guard is not working properly, I have saw Keeping %s (%u raw frames) said 67 raw frames ... -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=59986 --- Comment #7 from TOM <l12436.tw@gmail.com> --- From my currently knowing from log. 0194:trace:win:accum_mouse_motion Keeping pos (0,0), flags 0, data 0, time 0 (1 raw frames) 0194:trace:win:send_mouse_motion Sending pos (0,0), flags 0, data 0, time 0 (1 raw frames) there are lots of this kind of all zero motion. and due to send_mouse_motion only allow input.mi.dwFlags or input.mi.mouseData not zero to send data. so when it accumulate to 63 frame/64 frame, it will buffer overflow to 67 which is some how input.mi.dwFlags/input.mi.mouseData is not zero, and send data. and might due to buffer overflow, it will send error data and causing mouse button clicked event when I did not click it -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=59986 --- Comment #8 from TOM <l12436.tw@gmail.com> --- Created attachment 81413 --> http://bugs.winehq.org/attachment.cgi?id=81413 My fix according to the code flow I do not know If it is correct or not. but it actually seems fix issue, no keeping raw frame > 64 causing buffer overflow from my log -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=59986 Ivo Ivanov <logos128@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |logos128@gmail.com -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=59986 Ivo Ivanov <logos128@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |rbernon@codeweavers.com --- Comment #9 from Ivo Ivanov <logos128@gmail.com> --- I can confirm the reported behavior. It happens on all apps, including full screen games. As I cannot edit the main info, the regression commit is 08f7b746b00c07312a70d2f978d86bc80e6df88a, the affected Wine version is 11.13, the affected component is winex11, the distribution is Arch Linux (Manjaro). -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=59986 TOM <l12436.tw@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Regression SHA1| |08f7b746b00c07312a70d2f978d | |86bc80e6df88a -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=59986 Ken Sharp <imwellcushtymelike@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download, patch URL| |https://cdn.cloudflare.stea | |mstatic.com/client/installe | |r/SteamSetup.exe Summary|After MR 11313 and 11329 |Mouse misbehaves in Steam |mouse sometimes acting | |weird | Version|unspecified |11.13 -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=59986 --- Comment #10 from Ken Sharp <imwellcushtymelike@gmail.com> --- I'm not seeing this at all. What WM are you running? Please attach the console output. https://gitlab.winehq.org/wine/wine/-/wikis/Bugs -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=59986 --- Comment #11 from TOM <l12436.tw@gmail.com> --- Created attachment 81468 --> http://bugs.winehq.org/attachment.cgi?id=81468 Log by +event,+event,+xinput,+win,+msg I am using kde 5.27 This is how I found the weird part, if you grep '67 raw frames' you will see the following log 0024:trace:win:send_mouse_motion Sending pos (6,0), flags 0, data 0x6, time 0 (67 raw frames) 0024:trace:win:accum_mouse_motion Keeping pos (0,-2), flags 0xffffffff, data 0, time 0 (67 raw frames) 0024:trace:win:send_mouse_motion Sending pos (0,-2), flags 0xffffffff, data 0, time 0 (67 raw frames) but according to the code TRACE( "Keeping %s (%u raw frames)\n", debugstr_mouseinput( &info->mouse_motion.mi ), info->raw_mouse.count ); info->raw_mouse.count show 67. but the raw_mouse define only contain 64 data struct raw_mouse { UINT count; POINT data[64]; /* arbitrary buffer size */ }; so I think the count should never shown 67 no matter what. that is buffer overflow Also if you search '65 raw frame' you will also see this 0024:trace:win:accum_mouse_motion Keeping pos (0,0), flags 0, data 0, time 0 (65 raw frames) 0024:trace:win:accum_mouse_motion Keeping pos (0,0), flags 0, data 0, time 0 (65 raw frames) the data complete zero. but count still increase So i think code in send_mouse_motion return too earily I think. maybe there are raw frame there. but code did not send it. due to the following condition if (!input.mi.dwFlags && !input.mi.mouseData) return STATUS_SUCCESS; /* ignore empty inputs */ -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=59986 --- Comment #12 from Ivo Ivanov <logos128@gmail.com> --- It happens after some time with more intensive mouse usage - mouse movement, clicks, etc. Steam reveals it very quickly, since it has a lot of mouse sensitive visual elements. (Steam for Windows installed in Wine.) But it isn't limited just to Steam, it happens in any other app. For example I have it in Simucube Tuner - an app for controlling Simucube FFB wheel bases. It happens also in Assetto Corsa Evo (fullscreen game), the last time it didn't register a mouse click on game exit. I'm on Xfce (X11). -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=59986 allfoxwy@gmail.com changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |allfoxwy@gmail.com -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=59986 TOM <l12436.tw@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution|--- |FIXED --- Comment #13 from TOM <l12436.tw@gmail.com> --- patch has been upstream to commit a1bae27f21b53fa3ac6be6b08f4cbfb441360ade -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=59986 Dmitry Timoshkov <dmitry@baikal.ru> changed: What |Removed |Added ---------------------------------------------------------------------------- Fixed by SHA1| |a1bae27f21b53fa3ac6be6b08f4 | |cbfb441360ade -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
participants (1)
-
WineHQ Bugzilla