Closed
Bug 1827665
Opened 2 years ago
Closed 2 years ago
Introduce an ExtensionProcessCrashObserver singleton in the WebExtensions internals
Categories
(WebExtensions :: General, task)
WebExtensions
General
Tracking
(firefox114 fixed)
RESOLVED
FIXED
114 Branch
Tracking | Status | |
---|---|---|
firefox114 | --- | fixed |
People
(Reporter: rpl, Assigned: rpl)
References
(Blocks 1 open bug)
Details
(Whiteboard: [addons-jira])
Attachments
(1 file)
As part of introducing extension process crash detection and handling, especially in support of enabling the extension child process in GeckoView builds where the child extension process has an higher chance to be forcefully killed by the operating system, we want to introduce a new ExtensionProcessCrashObserver singleton, which will have the role of:
- observing the observer service topics notified when a new extension child process is created (or a preallocated child process allocated to be used as a new extension child process) and when the extension child process is shutdown
- detecting an abnormal extension child process shutdown
- emitting an internal WebExtensions global event (one for all extensions) when an abnormal extension child process shutdown has been detected
In separate patches built on top of the one introducing the ExtensionProcessCrashObserver we expect to be wiring it up:
- with a GeckoView singleton that would notify the embedder when an extension child process chat have been hit (currently tracked by Bug 1819737)
- with code handling the extension process crash from a background page/event page perspective (currently tracked by Bug 1819732)
Updated•2 years ago
|
Assignee | ||
Comment 1•2 years ago
|
||
This patch includes:
- a new ExtensionProcessCrashObserver singleton in Extension.jsm, which is responsible
for watching extension process allocation and shutdown and emit an internal
Management event when a new extension child process crash has been detected. - a new browser_ext_process_crash_handling.js test file that covers ExtensionProcessCrashObserver
behaviors with explicit automated tests.
The Management event is meant to be listened by:
- ext-backgroundPage.js, to handle the process crash by cleaning up the background context state from
the backgroundStatus it was when it did hit a crash. - by a GeckoView singleton that will be notify the GeckoView embedder about new extension process
crashes detected
Updated•2 years ago
|
Assignee: nobody → lgreco
Status: NEW → ASSIGNED
Pushed by luca.greco@alcacoop.it:
https://hg.mozilla.org/integration/autoland/rev/4569c5467367
Introduce a new ExtensionProcessCrashObserver singleton. r=willdurand,amejiamarmol
Comment 3•2 years ago
|
||
bugherder |
Status: ASSIGNED → RESOLVED
Closed: 2 years ago
status-firefox114:
--- → fixed
Resolution: --- → FIXED
Target Milestone: --- → 114 Branch
You need to log in
before you can comment on or make changes to this bug.
Description
•