Closed
Bug 1084558
Opened 10 years ago
Closed 10 years ago
browser_httphash6.js crashes in e10s mode
Categories
(Toolkit :: Add-ons Manager, defect)
Toolkit
Add-ons Manager
Tracking
()
Tracking | Status | |
---|---|---|
e10s | m5+ | --- |
People
(Reporter: mossop, Assigned: mossop)
References
Details
Attachments
(1 file, 1 obsolete file)
56.49 KB,
patch
|
Unfocused
:
review+
|
Details | Diff | Splinter Review |
Somehow we end up passing a window CPOW to Services.ww.openWindow.
0 Installer_checkAllDownloaded() ["file:///Users/dave/mozilla/build/nightly-debug/dist/NightlyDebug.app/Contents/Resources/components/amWebInstallListener.js":186]
this = [object Object]
1 Installer_onDownloadEnded(aInstall = [object Object]) ["file:///Users/dave/mozilla/build/nightly-debug/dist/NightlyDebug.app/Contents/Resources/components/amWebInstallListener.js":240]
this = [object Object]
2 AMI_callInstallListeners(aMethod = "onDownloadEnded", aExtraListeners = [object Object],[object Object], aArgs = [object Object]) ["resource://gre/modules/AddonManager.jsm":1493]
this = [object Object]
3 AMP_callInstallListeners(aArgs = onDownloadEnded,[object Object],[object Object],[object Object], [object Object],[object Object], [object Object]) ["resource://gre/modules/AddonManager.jsm":2443]
this = [object Object]
4 downloadCompleted_getVisibleAddonForID(aAddon = null) ["resource://gre/modules/addons/XPIProvider.jsm":5621]
5 anonymous(aArgs = ) ["resource://gre/modules/addons/XPIProvider.jsm -> resource://gre/modules/addons/XPIProviderUtils.js":146]
6 getRepositoryAddon(aAddon = null, aCallback = [function]) ["resource://gre/modules/addons/XPIProvider.jsm -> resource://gre/modules/addons/XPIProviderUtils.js":127]
this = [object Object]
7 anonymous(addonDB = [object Map]) ["resource://gre/modules/addons/XPIProvider.jsm -> resource://gre/modules/addons/XPIProviderUtils.js":1071]
this = [object Object]
8 anonymous() ["resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js":865]
this = [object Object]
9 anonymous() ["resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js":744]
this = [object Object]
Updated•10 years ago
|
Assignee: nobody → dtownsend+bugmail
Assignee | ||
Updated•10 years ago
|
Status: NEW → ASSIGNED
Iteration: --- → 36.1
Points: --- → 5
Flags: qe-verify-
Flags: firefox-backlog+
Updated•10 years ago
|
Iteration: 36.1 → 36.2
Assignee | ||
Comment 1•10 years ago
|
||
Well there is a quick fix here but the problem stems from the add-on manager using a number of APIs that in non-e10s mode take DOM windows and in e10s mode take browser elements. This causes some confusion so I decided to unify to use browser elements everywhere.
Attachment #8515253 -
Flags: review?(bmcbride)
Comment 2•10 years ago
|
||
Comment on attachment 8515253 [details] [diff] [review]
patch
Review of attachment 8515253 [details] [diff] [review]:
-----------------------------------------------------------------
::: toolkit/mozapps/extensions/amWebInstallListener.js
@@ +181,5 @@
> + // These parts may throw if the browser has already been closed.
> + if (this.browser.contentWindow)
> + parentWindow = this.browser.contentWindow;
> + let tabbrowser = this.browser.getTabBrowser();
> + tabbrowser.selectedTab = tabbrowser.getTabForBrowser(this.browser);
:(
I wish we'd invest in building proper implementation-agnostic APIs, instead of continually adding more technical debt because of e10s.
Attachment #8515253 -
Flags: review?(bmcbride) → review+
Assignee | ||
Comment 3•10 years ago
|
||
(In reply to Blair McBride [:Unfocused] from comment #2)
> Comment on attachment 8515253 [details] [diff] [review]
> patch
>
> Review of attachment 8515253 [details] [diff] [review]:
> -----------------------------------------------------------------
>
> ::: toolkit/mozapps/extensions/amWebInstallListener.js
> @@ +181,5 @@
> > + // These parts may throw if the browser has already been closed.
> > + if (this.browser.contentWindow)
> > + parentWindow = this.browser.contentWindow;
> > + let tabbrowser = this.browser.getTabBrowser();
> > + tabbrowser.selectedTab = tabbrowser.getTabForBrowser(this.browser);
>
> :(
>
> I wish we'd invest in building proper implementation-agnostic APIs, instead
> of continually adding more technical debt because of e10s.
Good news, we already have and I just didn't know about it.
Attachment #8515253 -
Attachment is obsolete: true
Attachment #8516173 -
Flags: review?(bmcbride)
Updated•10 years ago
|
Attachment #8516173 -
Flags: review?(bmcbride) → review+
Assignee | ||
Comment 4•10 years ago
|
||
Comment 5•10 years ago
|
||
Status: ASSIGNED → RESOLVED
Closed: 10 years ago
Flags: in-testsuite+
Resolution: --- → FIXED
Target Milestone: --- → mozilla36
You need to log in
before you can comment on or make changes to this bug.
Description
•