http://bugs.winehq.org/show_bug.cgi?id=36937
Bug ID: 36937 Summary: WinHttpReceiveRequest goes into infinite blocking on 304 responses Product: Wine Version: 1.7.22 Hardware: x86 OS: Linux Status: UNCONFIRMED Severity: major Priority: P2 Component: winhttp Assignee: wine-bugs@winehq.org Reporter: anduchs@gmail.com
Created attachment 49045 --> http://bugs.winehq.org/attachment.cgi?id=49045 TestCase for the issue
When requesting a website with an "If-Modified-Since"-header and the website returns "304 Not Modified" then the call to WinHttpReceiveResponse() blocks forever.
The reason is that a 304-response does not have a Content-Length reader. For some reason it gets set to 4096 and winhttp tries to read this many bytes from the network even though nothing is going to come.
This bug affects the "Marvel Heroes 2015 Launcher" during update checking. (Unfortunately game client still has some more issues)
Attach are a Testing-Program and a patch that fixes it.
(for the patch, I don't know if this would be the correct way to fix the issue, but it looked like a good place to put the fix)