RESOLVED FIXED 199380
FetchResponse::BodyLoader should not be movable
https://bugs.webkit.org/show_bug.cgi?id=199380
Summary FetchResponse::BodyLoader should not be movable
Zan Dobersek
Reported 2019-07-01 14:11:53 PDT
FetchResponse::BodyLoader should not be movable
Attachments
Patch (3.40 KB, patch)
2019-07-01 14:22 PDT, Zan Dobersek
no flags
Patch (4.13 KB, patch)
2019-07-01 23:51 PDT, Zan Dobersek
no flags
Zan Dobersek
Comment 1 2019-07-01 14:22:01 PDT
This is currently causing a few crashes in fetch-related tests on debug bots using GCC, with "pure virtual method" error being thrown when calling FetchLoaderClient virtual methods on already-freed FetchResponse::BodyLoader objects.
Zan Dobersek
Comment 2 2019-07-01 14:22:30 PDT
EWS Watchlist
Comment 3 2019-07-01 14:23:55 PDT
Attachment 373265 [details] did not pass style-queue: ERROR: Source/WebCore/Modules/fetch/FetchResponse.h:37: Alphabetical sorting problem. [build/include_order] [4] ERROR: Source/WebCore/ChangeLog:12: Please consider whether the use of security-sensitive phrasing could help someone exploit WebKit: use-after-free [changelog/unwantedsecurityterms] [3] Total errors found: 2 in 3 files If any of these errors are false positives, please file a bug against check-webkit-style.
Alex Christensen
Comment 4 2019-07-01 14:54:14 PDT
Comment on attachment 373265 [details] Patch Classic case of moved-from undefined state bug. We still need to be careful about std::exchange/WTFMove being used correctly.
youenn fablet
Comment 5 2019-07-01 18:26:58 PDT
I think we should make m_bodyLoader a std::unique_ptr instead of an Optional.
Zan Dobersek
Comment 6 2019-07-01 23:51:52 PDT
Created attachment 373305 [details] Patch Takes the unique_ptr approach.
Zan Dobersek
Comment 7 2019-07-02 22:43:13 PDT
Comment on attachment 373305 [details] Patch Clearing flags on attachment: 373305 Committed r247087: <https://trac.webkit.org/changeset/247087>
Zan Dobersek
Comment 8 2019-07-02 22:43:17 PDT
All reviewed patches have been landed. Closing bug.
Radar WebKit Bug Importer
Comment 9 2019-07-02 22:44:17 PDT
Note You need to log in before you can comment on or make changes to this bug.