Startup Sequence for add-ons leads to unexpected results
Categories
(Thunderbird :: Add-Ons: General, defect)
Tracking
(Not tracked)
People
(Reporter: patrick, Unassigned)
Details
A user reported a compatibility issue between Enigmail and uBlock on TB 68: the uBlock settings are not restored properly if Enigmail is installed. uBlock is a pure WebExtension, while Enigmail is a bootstrapped extension.
The error in uBlock is that browser.storage.local does not work properly at launch time if Enigmail is installed. I made a test and modified my startup() function in bootstrap.js. Instead of doing everything synchronously, I changed startup to work asynchronously. However, adding a delay of 200ms didn't change anything. Only if I changed the delay to 1000ms, uBlock started properly.
Enigmail does a few time-consuming things at startup, and thus looks like some of the asynchronous functions in TB expect that no other task is working in parallel at startup time. I therefore think that something is wrong with how Thunderbird startup and/or when addons are started.
Here are the corresponding bugs for Enigmail and uBlock:
https://sourceforge.net/p/enigmail/bugs/1041/
https://github.com/uBlockOrigin/uBlock-issues/issues/817
Comment 1•6 years ago
|
||
who best to look at this?
Comment 2•6 years ago
|
||
You'd probably have to debug it more in depth, and see what's going on in around https://searchfox.org/mozilla-central/source/toolkit/components/extensions/child/ext-storage.js#280
Comment 3•4 years ago
|
||
By enabling delayed background startup in TB98 (Bug 1752090 & Bug 1753392), this should be resolved. I could no longer trigger storage related errors.
Description
•