RESOLVED FIXED Bug 183254
Converting a load to a download does not work with async policy delegates
https://bugs.webkit.org/show_bug.cgi?id=183254
Summary Converting a load to a download does not work with async policy delegates
Chris Dumez
Reported 2018-03-01 11:52:17 PST
Converting a load to a download does not work with async policy delegates. This causes fast/dom/HTMLAnchorElement/anchor-file-blob-convert-to-download.html and a few other tests to fail when enabling asyncpolicy delegates.
Attachments
WIP Patch (11.74 KB, patch)
2018-03-01 12:31 PST, Chris Dumez
no flags
Patch (16.05 KB, patch)
2018-03-01 12:50 PST, Chris Dumez
no flags
Archive of layout-test-results from ews101 for mac-sierra (2.19 MB, application/zip)
2018-03-01 13:51 PST, EWS Watchlist
no flags
Patch (19.39 KB, patch)
2018-03-01 13:55 PST, Chris Dumez
no flags
Radar WebKit Bug Importer
Comment 1 2018-03-01 11:53:08 PST
Chris Dumez
Comment 2 2018-03-01 12:31:23 PST
Created attachment 334839 [details] WIP Patch
Chris Dumez
Comment 3 2018-03-01 12:50:43 PST
EWS Watchlist
Comment 4 2018-03-01 13:51:30 PST
Comment on attachment 334842 [details] Patch Attachment 334842 [details] did not pass mac-ews (mac): Output: http://webkit-queues.webkit.org/results/6724935 New failing tests: fast/dom/HTMLAnchorElement/anchor-file-blob-convert-to-download-async-delegate.html
EWS Watchlist
Comment 5 2018-03-01 13:51:32 PST
Created attachment 334849 [details] Archive of layout-test-results from ews101 for mac-sierra The attached test failures were seen while running run-webkit-tests on the mac-ews. Bot: ews101 Port: mac-sierra Platform: Mac OS X 10.12.6
Chris Dumez
Comment 6 2018-03-01 13:55:33 PST
youenn fablet
Comment 7 2018-03-02 09:11:06 PST
Comment on attachment 334850 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=334850&action=review > Source/WebCore/loader/DocumentLoader.cpp:789 > + frameLoader()->checkContentPolicy(m_response, [this, protectedThis = makeRef(*this), mainResourceLoader = WTFMove(mainResourceLoader)](PolicyAction policy) { I guess capturing mainResourceLoader in the lambda is to be extra safe that we call didReceiveResponsePolicy on the exact same loader from which we called markInAsyncResponsePolicyCheck. Or is there some more subtlety there?
Chris Dumez
Comment 8 2018-03-02 09:12:08 PST
Comment on attachment 334850 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=334850&action=review >> Source/WebCore/loader/DocumentLoader.cpp:789 >> + frameLoader()->checkContentPolicy(m_response, [this, protectedThis = makeRef(*this), mainResourceLoader = WTFMove(mainResourceLoader)](PolicyAction policy) { > > I guess capturing mainResourceLoader in the lambda is to be extra safe that we call didReceiveResponsePolicy on the exact same loader from which we called markInAsyncResponsePolicyCheck. > Or is there some more subtlety there? No subtlety, I thought it looked better :)
WebKit Commit Bot
Comment 9 2018-03-02 09:41:12 PST
Comment on attachment 334850 [details] Patch Clearing flags on attachment: 334850 Committed r229177: <https://trac.webkit.org/changeset/229177>
WebKit Commit Bot
Comment 10 2018-03-02 09:41:14 PST
All reviewed patches have been landed. Closing bug.
Note You need to log in before you can comment on or make changes to this bug.