Closed Bug 1603950 Opened 6 years ago Closed 4 years ago

Startup Sequence for add-ons leads to unexpected results

Categories

(Thunderbird :: Add-Ons: General, defect)

defect
Not set
normal

Tracking

(Not tracked)

RESOLVED WORKSFORME

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

who best to look at this?

Flags: needinfo?(mkmelin+mozilla)
Flags: needinfo?(geoff)

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

Flags: needinfo?(mkmelin+mozilla)
Flags: needinfo?(geoff)

By enabling delayed background startup in TB98 (Bug 1752090 & Bug 1753392), this should be resolved. I could no longer trigger storage related errors.

Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.