New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Custom stream protocols will sometimes give empty or partial responses (Electron 4) #16213
Comments
We seem to be experiencing the same problem when making use of meteor-desktop; pretty consistently the main asset of our application will be a few bytes short of complete. |
This is a pretty severe regression on 4.0... a main API should not simply stop working and it shouldn't take weeks to resolve. Is this API not tested? How did the 4.0 release even happen? It makes it hard to commit to Electron when major platform APIs simply don't work. |
By the way; we are running on Windows and the issue seems the same, so I don't think this is platform specific. |
Awesome, thanks!! |
node_modules/.bin/electron --version
: 4.0.0node_modules/.bin/electron --version
on last known working Electron version (if applicable): 3.0.9Expected Behavior
Custom stream protocol responses should consistently provide the full response body of the request.
Actual behavior
Custom stream protocol responses will occasionally give an empty or partial response.
In both cases, the headers are present in devtools. When an empty response is given, the response body is missing.
When a partial response is given, the total size is consistently 4 bytes less than the sum of some of the chunks. For instance, if there are two chunks of 100b then 50b, the received size might be 96b (4b less than the first chunk's size). If there are three chunks of 100b, then 50b, then 25b, the received size might be 96b (4b less than the first chunk) or it might be 146b (4b less than the first two chunks combined). I mention this because the 4b pattern is consistent, and might give a clue about the cause.
I have been unable to reliably reproduce the issue, making me think this is simply a race within the stream-protocol code.
Things which did not seem to affect the behavior:
To Reproduce
Then:
cmd/ctrl + r
) until the window becomes blank.The text was updated successfully, but these errors were encountered: