Closed Bug 1084558 Opened 10 years ago Closed 10 years ago

browser_httphash6.js crashes in e10s mode

Categories

(Toolkit :: Add-ons Manager, defect)

defect
Not set
normal
Points:
5

Tracking

()

RESOLVED FIXED
mozilla36
Iteration:
36.2
Tracking Status
e10s m5+ ---

People

(Reporter: mossop, Assigned: mossop)

References

Details

Attachments

(1 file, 1 obsolete file)

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]
Blocks: 1080785
Assignee: nobody → dtownsend+bugmail
Status: NEW → ASSIGNED
Iteration: --- → 36.1
Points: --- → 5
Flags: qe-verify-
Flags: firefox-backlog+
Iteration: 36.1 → 36.2
Blocks: 1082871
Attached patch patch (obsolete) — Splinter Review
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 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+
Attached patch patch rev 2Splinter Review
(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)
Blocks: 1093586
Attachment #8516173 - Flags: review?(bmcbride) → review+
Status: ASSIGNED → RESOLVED
Closed: 10 years ago
Flags: in-testsuite+
Resolution: --- → FIXED
Target Milestone: --- → mozilla36
Blocks: 1094694
Blocks: 1094706
Depends on: 1095297
Depends on: 1096178
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: