https://bugs.winehq.org/show_bug.cgi?id=49890
Bug ID: 49890 Summary: Disconnects and networking issues in applications using websockets Product: Wine Version: unspecified Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown Assignee: wine-bugs@winehq.org Reporter: dt@zeroitlab.com Distribution: ---
This probably affects multiple games, from my experience Legends of Runeterra, Enemy On Board, Fall Guys and probably a ton others.
Root cause analysis is yet to be done.
https://bugs.winehq.org/show_bug.cgi?id=49890
--- Comment #1 from Austin English austinenglish@gmail.com --- Wine version? Terminal output? Steps to reproduce?
https://bugs.winehq.org/show_bug.cgi?id=49890
--- Comment #2 from David Torok dt@zeroitlab.com --- (In reply to Austin English from comment #1)
Wine version? Terminal output? Steps to reproduce?
Great questions, I'm sorry for not giving more details. This was meant as a placeholder, until I figured out those details.
On wine versions < 5.7, I was able to reproduce this very consistently. Now I feel silly, because I cannot reproduce this at all on 5.17 in the case of Legends of Runeterra.
When I was testing this on wine < 5.7, the terminal output did not contain anything related to this; however I may have missed the right debug channel. However, when I did try to track that down (by following an unobfuscated version of GameAssembly.dll), I came to the conclusion that the websocket disconnect was initiated by the client because of a "timeout". I am certain that the timeout was unreasonable, because I wrote a reverse proxy that printed the websocket packets in real time, and the supposed timeout was shortly after receiving packets.
As for reproduction steps, on wine versions < 5.7 staging (or any version with my patches from #47970 applied to staging and before the ntdll PE split), getting into a Player VS Ai game in Legends of Runeterra ( https://playruneterra.com/en-us/ , free to play however a Riot account is needed ) surely ended with a disconnect at about the 3 minute mark from connecting to the game. (Reproduced the issue for me basically 100% of the time)
More testing will be needed to see if this was fixed at some point, as I cannot reproduce this on 5.17 at this time. (To test this with Runeterra on 5.17, the staging patch "ntdll-NtQueryVirtualMemory" needs to be rebased, which I will try to submit separately)
https://bugs.winehq.org/show_bug.cgi?id=49890
--- Comment #3 from Hans Leidekker hans@meelstraat.net --- (In reply to David Torok from comment #2)
More testing will be needed to see if this was fixed at some point, as I cannot reproduce this on 5.17 at this time. (To test this with Runeterra on 5.17, the staging patch "ntdll-NtQueryVirtualMemory" needs to be rebased, which I will try to submit separately)
If it's using winhttp websockets, note that support was added in Wine 5.12.