Closed
Bug 1283342
Opened 9 years ago
Closed 8 years ago
"User-Agent Switcher" add-on's toolbar menu is blank. Exception... "Method not implemented" location: "JS frame :: resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk
Categories
(Firefox :: Extension Compatibility, defect)
Tracking
()
RESOLVED
DUPLICATE
of bug 1294199
Tracking | Status | |
---|---|---|
firefox47 | --- | unaffected |
firefox48 | --- | unaffected |
firefox49 | - | fix-optional |
firefox50 | --- | fixed |
firefox51 | --- | fixed |
People
(Reporter: cpeterson, Unassigned)
References
()
Details
(Keywords: regression)
[Tracking Requested - why for this release]:
This is a regression in 49.
James, I bisected the regression to your fix for bug 1269361. Would you expect add-on breakage from your change?
STR:
1. Install the "User-Agent Switcher" add-on. Note that there are other add-ons with similar names, but you want this one:
https://addons.mozilla.org/en-US/firefox/addon/user-agent-switcher-firefox/
2. The add-on will add a globe icon to your toolbar.
3. Click the globe icon to see a menu of browser icons.
4. Open a Private Browsing window.
5. Click the globe icon in the Private Browsing window.
RESULT:
The menu is blank.
The following JavaScript exceptions is logged to the console:
console.error: useragentswitcher:
Message: [Exception... "Method not implemented" nsresult: "0x80004001 (NS_ERROR_NOT_IMPLEMENTED)" location: "JS frame :: resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/frame/utils.js :: swapFrameLoaders :: line 92" data: no]
Stack:
swapFrameLoaders@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/frame/utils.js:92:10
onDisplayChange@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/panel/utils.js:289:7
openPopup@chrome://global/content/bindings/popup.xml:50:15
display@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/panel/utils.js:194:3
open@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/panel/utils.js:79:8
show@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/panel/utils.js:222:3
show@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/panel.js:292:7
button<.onClick@resource://gre/modules/commonjs/toolkit/loader.js -> resource://jid1-kyxeacwua7bekq-at-jetpack/lib/firefox/firefox.js:36:27
emitOnObject@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/event/core.js:112:9
emit@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/event/core.js:89:38
@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/ui/button/action.js:101:3
emitOnObject@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/event/core.js:112:9
emit@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/event/core.js:89:38
receive@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/event/utils.js:115:5
transform/next@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/event/utils.js:36:24
filter/<@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/event/utils.js:53:7
transform/<@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/event/utils.js:43:29
emitOnObject@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/event/core.js:112:9
emit@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/event/core.js:89:38
receive@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/event/utils.js:115:5
transform/next@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/event/utils.js:36:24
filter/<@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/event/utils.js:53:7
transform/<@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/event/utils.js:43:29
emitOnObject@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/event/core.js:112:9
emit@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/event/core.js:89:38
create/<.onBuild/<@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/ui/button/view.js:155:11
EventListener.handleEvent*create/<.onBuild@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/ui/button/view.js:153:7
CustomizableUIInternal.wrapWidgetEventHandler/aWidget[aEventName]@resource://app/modules/CustomizableUI.jsm:2418:16
CustomizableUIInternal.buildWidget@resource://app/modules/CustomizableUI.jsm:1344:16
CustomizableUIInternal.getWidgetNode@resource://app/modules/CustomizableUI.jsm:897:16
CustomizableUIInternal.buildArea@resource://app/modules/CustomizableUI.jsm:723:32
CustomizableUIInternal.registerToolbarNode@resource://app/modules/CustomizableUI.jsm:676:9
this.CustomizableUI.registerToolbarNode@resource://app/modules/CustomizableUI.jsm:3061:5
_init@chrome://browser/content/customizableui/toolbar.xml:85:11
onReadyStateChange@chrome://browser/content/customizableui/toolbar.xml:37:15
EventListener.handleEvent*toolbar_XBL_Constructor@chrome://browser/content/customizableui/toolbar.xml:33:13
console.error: useragentswitcher:
Message: [Exception... "Method not implemented" nsresult: "0x80004001 (NS_ERROR_NOT_IMPLEMENTED)" location: "JS frame :: resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/frame/utils.js :: swapFrameLoaders :: line 92" data: no]
Stack:
swapFrameLoaders@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/frame/utils.js:92:10
onDisplayChange@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/panel/utils.js:289:7
EventListener.handleEvent*make@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/panel/utils.js:323:3
setup@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/panel.js:171:16
@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/core/disposable.js:45:56
dispatch@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/method/core.js:119:12
Disposable<.initialize@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/core/disposable.js:135:17
constructor@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/core/heritage.js:146:23
@resource://gre/modules/commonjs/toolkit/loader.js -> resource://jid1-kyxeacwua7bekq-at-jetpack/lib/firefox/firefox.js:54:13
evaluate@resource://gre/modules/commonjs/toolkit/loader.js:279:19
load@resource://gre/modules/commonjs/toolkit/loader.js:331:5
_require@resource://gre/modules/commonjs/toolkit/loader.js:671:16
require@resource://gre/modules/commonjs/toolkit/loader.js:625:12
@resource://gre/modules/commonjs/toolkit/loader.js -> resource://jid1-kyxeacwua7bekq-at-jetpack/lib/common.js:3:13
evaluate@resource://gre/modules/commonjs/toolkit/loader.js:279:19
load@resource://gre/modules/commonjs/toolkit/loader.js:331:5
main@resource://gre/modules/commonjs/toolkit/loader.js:786:10
run@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/addon/runner.js:147:19
startup/</<@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/addon/runner.js:87:9
Handler.prototype.process@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:937:23
this.PromiseWalker.walkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:816:7
Promise*this.PromiseWalker.scheduleWalkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:747:11
this.PromiseWalker.schedulePromise@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:779:7
this.PromiseWalker.completePromise@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:714:7
handler@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/addon/window.js:56:3
EventListener.handleEvent*@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/addon/window.js:54:1
evaluate@resource://gre/modules/commonjs/toolkit/loader.js:279:19
load@resource://gre/modules/commonjs/toolkit/loader.js:331:5
_require@resource://gre/modules/commonjs/toolkit/loader.js:671:16
require@resource://gre/modules/commonjs/toolkit/loader.js:625:12
startup/<@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/addon/runner.js:72:21
Handler.prototype.process@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:937:23
this.PromiseWalker.walkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:816:7
Promise*this.PromiseWalker.scheduleWalkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:747:11
this.PromiseWalker.schedulePromise@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:779:7
this.PromiseWalker.completePromise@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:714:7
listener/<@resource://gre/modules/sdk/system/Startup.js:52:46
Flags: needinfo?(jandreou)
Comment 1•9 years ago
|
||
It is possible that the addon is using persisted OriginAttributes somewhere, and with the addition of new attributes something breaks.
Flags: needinfo?(jandreou)
Reporter | ||
Comment 2•9 years ago
|
||
I reported this issue to the add-on developer here: http://mybrowseraddon.com/useragent-switcher.html
Updated•9 years ago
|
Version: unspecified → 49 Branch
Comment 3•9 years ago
|
||
Where do addon bugs get reported? Should we move the component? Or do we expect this type of breakage not to occur?
Flags: needinfo?(ryanvm)
Updated•9 years ago
|
Component: DOM → Extension Compatibility
Flags: needinfo?(ryanvm)
Product: Core → Firefox
Comment 4•8 years ago
|
||
Andy, this appears to be a problem in the sdk layer. Can your team take a look?
Flags: needinfo?(amckay)
Updated•8 years ago
|
Blocks: e10s-addons
Flags: needinfo?(amckay)
Updated•8 years ago
|
status-firefox51:
--- → affected
Updated•8 years ago
|
Blocks: triaged-tracking
Comment 5•8 years ago
|
||
More information present in bug 1294199, so duping forward.
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → DUPLICATE
Comment 6•8 years ago
|
||
Mark 50/51 fixed as bug 1294199 was verified in 50/51.
You need to log in
before you can comment on or make changes to this bug.
Description
•