Closed Bug 1541577 Opened 5 years ago Closed 5 years ago

AddonInstall objects hold window references way too long

Categories

(Toolkit :: Add-ons Manager, defect, P2)

60 Branch
defect

Tracking

()

RESOLVED FIXED
mozilla68
Tracking Status
firefox68 --- fixed

People

(Reporter: aswan, Assigned: aswan)

References

Details

Attachments

(1 file)

When we create an AddonInstall object, we keep a reference to it in the AddonInternal object for the new (version of the) addon:
https://searchfox.org/mozilla-central/rev/14dc5b7d8a6da1854b2f9f33f1da77a97368cd54/toolkit/mozapps/extensions/internal/XPIInstall.jsm#1342

However, AddonInstall objects for interactive installs have a reference to the <browser> element from the window where they were started. Since we never clear _install, that means we hold a reference to a window where an install happened way too long.

We use addon._install while the install is happening but once the install is finished, we should just clear it.

Priority: -- → P2
Pushed by aswan@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/1209711b3866
Drop AddonInstall references when installs finish r=kmag

Backed out changeset 1209711b3866 (bug 1541577) for browser-chrome failures at browser/components/preferences/in-content/tests/browser_browser_languages_subdialog.js

Backout: https://hg.mozilla.org/integration/autoland/rev/bc5678427ab5d79eb1bac7961c2f73621b7056b4

Failure push: https://treeherder.mozilla.org/#/jobs?repo=autoland&selectedJob=239529527&revision=1209711b386628f657fe4f9bc72322f8227a6ae9

Failure log: https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=239527585&repo=autoland&lineNumber=2459

task 2019-04-11T00:54:43.174Z] 00:54:43 INFO - TEST-PASS | browser/components/preferences/in-content/tests/browser_browser_languages_subdialog.js | There's a dialogId -
[task 2019-04-11T00:54:43.175Z] 00:54:43 INFO - Buffered messages finished
[task 2019-04-11T00:54:43.180Z] 00:54:43 INFO - TEST-UNEXPECTED-FAIL | browser/components/preferences/in-content/tests/browser_browser_languages_subdialog.js | Uncaught exception - at chrome://mochitests/content/browser/browser/components/preferences/in-content/tests/browser_browser_languages_subdialog.js:279 - TypeError: pl.install is null
[task 2019-04-11T00:54:43.182Z] 00:54:43 INFO - Stack trace:
[task 2019-04-11T00:54:43.183Z] 00:54:43 INFO - testDisabledBrowserLanguages@chrome://mochitests/content/browser/browser/components/preferences/in-content/tests/browser_browser_languages_subdialog.js:279:21
[task 2019-04-11T00:54:43.184Z] 00:54:43 INFO - AsyncTester_execTest/<@chrome://mochikit/content/browser-test.js:1116:34
[task 2019-04-11T00:54:43.185Z] 00:54:43 INFO - Tester_execTest@chrome://mochikit/content/browser-test.js:1144:12
[task 2019-04-11T00:54:43.186Z] 00:54:43 INFO - nextTest/<@chrome://mochikit/content/browser-test.js:1005:14
[task 2019-04-11T00:54:43.188Z] 00:54:43 INFO - SimpleTest.waitForFocus/waitForFocusInner/focusedOrLoaded/<@chrome://mochikit/content/tests/SimpleTest/SimpleTest.js:803:59
[task 2019-04-11T00:54:43.189Z] 00:54:43 INFO - Leaving test bound testDisabledBrowserLanguages
[task 2019-04-11T00:54:43.191Z] 00:54:43 INFO - Entering test bound testReorderingBrowserLanguages
[task 2019-04-11T00:54:43.192Z] 00:54:43 INFO - Console message: 1554944082479 addons.xpi WARN Add-on langpack-pl@firefox.mozilla.org is missing bootstrap method update
[task 2019-04-11T00:54:43.463Z] 00:54:43 INFO - GECKO(2213) | 1554944083458 addons.xpi WARN Add-on langpack-fr@firefox.mozilla.org is missing bootstrap method update
[task 2019-04-11T00:54:43.585Z] 00:54:43 INFO - GECKO(2213) | 1554944083580 addons.xpi WARN Add-on langpack-pl@firefox.mozilla.org is missing bootstrap method update
[task 2019-04-11T00:54:43.823Z] 00:54:43 INFO - Console message: 1554944083458 addons.xpi WARN Add-on langpack-fr@firefox.mozilla.org is missing bootstrap method update
[task 2019-04-11T00:54:43.888Z] 00:54:43 INFO - GECKO(2213) | 1554944083883 addons.xpi WARN Add-on langpack-he@firefox.mozilla.org is missing bootstrap method update
[task 2019-04-11T00:54:44.228Z] 00:54:44 INFO - Console message: 1554944083580 addons.xpi WARN Add-on langpack-pl@firefox.mozilla.org is missing bootstrap method update
[task 2019-04-11T00:54:44.393Z] 00:54:44 INFO - Console message: 1554944083883 addons.xpi WARN Add-on langpack-he@firefox.mozilla.org is missing bootstrap method update
[task 2019-04-11T00:54:44.757Z] 00:54:44 INFO - Console message: [JavaScript Error: "GET http://127.0.0.1:8888/extensions-dummy/repositoryGetURL failed (status 404)" {file: "resource://gre/modules/addons/AddonRepository.jsm" line: 470}]
[task 2019-04-11T00:54:44.757Z] 00:54:44 INFO - _fetchPaged/fetchNextPage/</<@resource://gre/modules/addons/AddonRepository.jsm:470:20
[task 2019-04-11T00:54:44.757Z] 00:54:44 INFO - EventListener.handleEvent
_fetchPaged/fetchNextPage/<@resource://gre/modules/addons/AddonRepository.jsm:467:17
[task 2019-04-11T00:54:44.757Z] 00:54:44 INFO - fetchNextPage@resource://gre/modules/addons/AddonRepository.jsm:455:14
[task 2019-04-11T00:54:44.757Z] 00:54:44 INFO - _fetchPaged@resource://gre/modules/addons/AddonRepository.jsm:492:12
[task 2019-04-11T00:54:44.757Z] 00:54:44 INFO - getAddonsByIDs@resource://gre/modules/addons/AddonRepository.jsm:503:17
[task 2019-04-11T00:54:44.757Z] 00:54:44 INFO - installDictionariesForLanguage@chrome://browser/content/preferences/browserLanguages.js:538:46
[task 2019-04-11T00:54:44.757Z] 00:54:44 INFO - asyncrequestRemoteLanguage@chrome://browser/content/preferences/browserLanguages.js:532:10
[task 2019-04-11T00:54:44.757Z] 00:54:44 INFO - async
availableLanguageSelected@chrome://browser/content/preferences/browserLanguages.js:485:18
[task 2019-04-11T00:54:44.758Z] 00:54:44 INFO - asynconSelect@chrome://browser/content/preferences/browserLanguages.js:389:32
[task 2019-04-11T00:54:44.758Z] 00:54:44 INFO - SortedItemSelectList/<@chrome://browser/content/preferences/browserLanguages.js:210:7
[task 2019-04-11T00:54:44.758Z] 00:54:44 INFO - selectLocale@chrome://mochitests/content/browser/browser/components/preferences/in-content/tests/browser_browser_languages_subdialog.js:185:35
[task 2019-04-11T00:54:44.758Z] 00:54:44 INFO - testDisabledBrowserLanguages@chrome://mochitests/content/browser/browser/components/preferences/in-content/tests/browser_browser_languages_subdialog.js:269:9
[task 2019-04-11T00:54:44.758Z] 00:54:44 INFO - Async
Tester_execTest/<@chrome://mochikit/content/browser-test.js:1116:34
[task 2019-04-11T00:54:44.758Z] 00:54:44 INFO - Tester_execTest@chrome://mochikit/content/browser-test.js:1144:12
[task 2019-04-11T00:54:44.758Z] 00:54:44 INFO - nextTest/<@chrome://mochikit/content/browser-test.js:1005:14
[task 2019-04-11T00:54:44.758Z] 00:54:44 INFO - SimpleTest.waitForFocus/waitForFocusInner/focusedOrLoaded/<@chrome://mochikit/content/tests/SimpleTest/SimpleTest.js:803:59
[task 2019-04-11T00:54:44.758Z] 00:54:44 INFO -
[task 2019-04-11T00:56:08.575Z] 00:56:08 INFO - Not taking screenshot here: see the one that was previously logged

Flags: needinfo?(aswan)
Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla68
Flags: needinfo?(aswan)
See Also: → 1728482
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: