Bug 167890 - [Soup] Long resources loaded by custom protocols sometimes never finish loading
Summary: [Soup] Long resources loaded by custom protocols sometimes never finish loading
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebKit2 (show other bugs)
Version: WebKit Local Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
URL:
Keywords: Gtk, Soup
Depends on:
Blocks:
 
Reported: 2017-02-06 10:14 PST by Carlos Garcia Campos
Modified: 2017-02-06 22:14 PST (History)
3 users (show)

See Also:


Attachments
Patch (4.52 KB, patch)
2017-02-06 10:19 PST, Carlos Garcia Campos
mcatanzaro: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Carlos Garcia Campos 2017-02-06 10:14:54 PST
It's another bug that has appeared in WebKitSoupRequestInputStream after moving the custom protocols handling to the main thread. The problem is that webkitSoupRequestInputStreamPendingReadAsyncComplete invalidates pendingAsyncRead after calling webkitSoupRequestInputStreamReadAsyncResultComplete, but in some cases webkitSoupRequestInputStreamReadAsyncResultComplete completes the task in the same run loop iteration. In that case webkitSoupRequestInputStreamReadAsync is called again creating a new AsyncReadData that is destroyed right after webkitSoupRequestInputStreamReadAsyncResultComplete returns.
Comment 1 Carlos Garcia Campos 2017-02-06 10:19:48 PST
Created attachment 300731 [details]
Patch
Comment 2 Michael Catanzaro 2017-02-06 10:35:50 PST
Could this be the cause of bug #167887?
Comment 3 Carlos Garcia Campos 2017-02-06 22:04:58 PST
(In reply to comment #2)
> Could this be the cause of bug #167887?

I don't think so. I haven't looked at the yelp issue yet, but I would bet it's the same volume check.
Comment 4 Carlos Garcia Campos 2017-02-06 22:14:35 PST
Committed r211773: <http://trac.webkit.org/changeset/211773>