gecko-dev/dom/fetch
Eden Chuang ec09980910 Bug 1837736 - Don't execute WorkerFetchResponseRunnable::WorkerRun when Worker is shutting down r=asuth
This is a case that Worker is shutting down when WorkerFetchResponseRunnable is in queue.

When Worker is getting into "Canceling" all WorkerRefs are notified, then queued WorkerRunnable are executed.
And this causes PromiseWorkerProxy::mWorkerRef be released before the WorkerRunnable execution.
Before Fx 116, there is no this problem since the queued WorkerFetchResponseRunnable is canceled by WorkerPrivate::ClearMainEventQueue() mechanism.

However, WorkerFetchResponseRunnable needs WorkerRef to keep Worker alive for its WorkerRun execution.

Here we just check if WorkerFetchResolver::mWorkerRef is notified or not to judge if the Worker is in "Canceling." Once the Worker is in "Canceling," return true in WorkerFetchResponseRunnable::WorkerRun directly.

We might need a mechanism for PromiseWorkerProxy to notify the proxy owner worker is shutting down for proxy owner has a way to release resources.

Differential Revision: https://phabricator.services.mozilla.com/D183859
2023-07-19 08:09:11 +00:00
..
tests Bug 1826062 - Automatic fixes for upgrading Prettier to 2.8.8. r=mossop,perftest-reviewers,webcompat-reviewers,geckoview-reviewers,denschub,devtools-reviewers,sparky,calu 2023-05-20 12:26:53 +00:00
BodyExtractor.cpp
BodyExtractor.h Bug 1768189 - Part 10: Apply modernize-concat-nested-namespaces to dom/events/PaintRequest.h ... r=andi 2022-05-09 20:41:07 +00:00
ChannelInfo.cpp Bug 1790451 - make nsIChannel.securityInfo concrete as nsITransportSecurityInfo r=kershaw,necko-reviewers,valentin,geckoview-reviewers,owlish 2022-09-20 03:58:49 +00:00
ChannelInfo.h Bug 1789494 - use the concrete type nsITransportSecurityInfo instead of IPCChannelInfo r=mccr8 2022-09-09 22:14:18 +00:00
Fetch.cpp Bug 1837736 - Don't execute WorkerFetchResponseRunnable::WorkerRun when Worker is shutting down r=asuth 2023-07-19 08:09:11 +00:00
Fetch.h Bug 1826206 - Require nsISerialEventTarget for RetargetDeliveryTo, r=necko-reviewers,valentin 2023-06-07 14:48:38 +00:00
FetchChild.cpp Bug 1819570 - P4 Propagte stack trace notification back to the content process for PFetch. r=asuth 2023-05-05 15:24:10 +00:00
FetchChild.h Bug 1819570 - P4 Propagte stack trace notification back to the content process for PFetch. r=asuth 2023-05-05 15:24:10 +00:00
FetchDriver.cpp Bug 1576602 - fetch response body should be empty for HEAD/CONNECT requests, per spec; r=kershaw,sunil 2023-07-19 02:44:01 +00:00
FetchDriver.h Bug 1819570 - P4 Propagte stack trace notification back to the content process for PFetch. r=asuth 2023-05-05 15:24:10 +00:00
FetchIPCTypes.h Bug 1765777 - Resolve FetchEvent.preloadResponse when the response is available not the response end. r=dom-worker-reviewers,jesup. 2022-05-11 19:40:47 +00:00
FetchLog.h
FetchObserver.cpp
FetchObserver.h Bug 1768189 - Part 10: Apply modernize-concat-nested-namespaces to dom/events/PaintRequest.h ... r=andi 2022-05-09 20:41:07 +00:00
FetchParent.cpp Bug 1819570 - P4 Propagte stack trace notification back to the content process for PFetch. r=asuth 2023-05-05 15:24:10 +00:00
FetchParent.h Bug 1819570 - P4 Propagte stack trace notification back to the content process for PFetch. r=asuth 2023-05-05 15:24:10 +00:00
FetchService.cpp Bug 1819570 - P4 Propagte stack trace notification back to the content process for PFetch. r=asuth 2023-05-05 15:24:10 +00:00
FetchService.h Bug 1819570 - P4 Propagte stack trace notification back to the content process for PFetch. r=asuth 2023-05-05 15:24:10 +00:00
FetchStreamReader.cpp Bug 1833790 - Ignore StrongWorkerRef callback if mWorkerRef is already cleared. r=dom-worker-reviewers,asuth 2023-06-06 16:02:52 +00:00
FetchStreamReader.h Bug 1770630 - Improve WorkerRef usage comments. r=jstutte DONTBUILD 2023-06-11 02:11:43 +00:00
FetchStreamUtils.cpp Bug 1351231 - FetchService integration for PFetch. r=dom-worker-reviewers,jesup 2023-01-20 09:09:17 +00:00
FetchStreamUtils.h Bug 1351231 - FetchService integration for PFetch. r=dom-worker-reviewers,jesup 2023-01-20 09:09:17 +00:00
FetchTypes.ipdlh Bug 1814686 - Part 1b: Add nullable annotations to refcounted types in ipdl, r=ipc-reviewers,mccr8 2023-03-20 15:40:37 +00:00
FetchUtil.cpp Bug 1832333 - Remove unused ErrorResult in GetBodyUsed r=smaug 2023-05-10 20:11:13 +00:00
FetchUtil.h Bug 1790311 - update handling of request headers in Fetch/XHR. r=necko-reviewers,valentin 2022-10-24 09:17:22 +00:00
Headers.cpp
Headers.h Bug 1812511 - Implement `Headers.prototype.getSetCookie`. r=webidl,smaug,sunil 2023-02-13 10:35:59 +00:00
InternalHeaders.cpp Bug 1733981: Allow single range header values without preflight. r=twisniewski,necko-reviewers,kershaw 2023-07-10 12:03:29 +00:00
InternalHeaders.h Bug 1812511 - Implement `Headers.prototype.getSetCookie`. r=webidl,smaug,sunil 2023-02-13 10:35:59 +00:00
InternalRequest.cpp Bug 1816918 - pass ClientInfo via IPC while creating webtransport session. r=necko-reviewers,jesup 2023-03-31 03:54:20 +00:00
InternalRequest.h Bug 1351231 - Support conversation between InternalRequest and IPCInternalRequest. r=dom-worker-reviewers,jesup 2023-01-20 09:09:17 +00:00
InternalResponse.cpp Bug 1833795 - Handle the case that InternalResponse.body/alternativeBody serialization fail. r=dom-worker-reviewers,smaug 2023-05-31 23:14:11 +00:00
InternalResponse.h Bug 1833795 - Handle the case that InternalResponse.body/alternativeBody serialization fail. r=dom-worker-reviewers,smaug 2023-05-31 23:14:11 +00:00
PFetch.ipdl Bug 1819570 - P4 Propagte stack trace notification back to the content process for PFetch. r=asuth 2023-05-05 15:24:10 +00:00
Request.cpp Bug 1832326 - Part 2: Remove FetchBody::mReadableStreamReader r=smaug 2023-05-16 00:08:01 +00:00
Request.h Bug 1777574, automate CC zone handling, r=mccr8 2022-09-07 11:22:51 +00:00
Response.cpp Bug 1842488 - do not add an empty-string content-type header when constructing a Response with a ReadableStream; r=kershaw 2023-07-11 19:36:24 +00:00
Response.h Bug 1758943 - Implement Response.json static method; r=smaug 2023-05-08 14:40:55 +00:00
moz.build Bug 1351231 - PFetch protocol declaration and implementation. r=dom-worker-reviewers,jesup 2023-01-20 09:09:17 +00:00