Open
Bug 1411767
Opened 7 years ago
Updated 2 years ago
Non-fatal JS errors logged to console when running browser_PageActions.js
Categories
(Firefox :: Menus, defect, P3)
Firefox
Menus
Tracking
()
NEW
People
(Reporter: adw, Unassigned)
References
Details
(Whiteboard: [reserve-photon-structure])
When I run browser_PageActions.js locally, there are three JS errors logged to the console. The test finishes successfully anyway, so I'm not sure how important they are. The errors don't appear in any treeherder logs I looked at, but maybe that's because they're truncated?
The first error is in the `withSubview` task:
> 124 INFO TEST-PASS | browser/modules/test/browser/browser_PageActions.js | panelViewNode.id - "pageAction-urlbar-test-subview-subview" == "pageAction-urlbar-test-subview-subview" -
> 125 INFO TEST-PASS | browser/modules/test/browser/browser_PageActions.js | panelViewNode should be non-null: [object XULElement] - {"__lastKnownBoundingRect":{}} == true -
> 126 INFO TEST-PASS | browser/modules/test/browser/browser_PageActions.js | panelViewNode.id - "pageAction-urlbar-test-subview-subview" == "pageAction-urlbar-test-subview-subview" -
> 127 INFO Console message: [JavaScript Error: "SlidingPanelViews :: index -1 out of bounds" {file: "resource:///modules/PanelMultiView.jsm" line: 77}]
> set current@resource:///modules/PanelMultiView.jsm:77:13
> set currentView@resource:///modules/PanelMultiView.jsm:110:27
> set _currentSubView@resource:///modules/PanelMultiView.jsm:241:7
> hideAllViewsExcept@resource:///modules/PanelMultiView.jsm:486:5
> showSubView/this._currentShowPromise<@resource:///modules/PanelMultiView.jsm:593:11
> async*showSubView@resource:///modules/PanelMultiView.jsm:496:33
> showMainView@resource:///modules/PanelMultiView.jsm:448:14
> handleEvent@resource:///modules/PanelMultiView.jsm:1073:9
> hidePopup@chrome://global/content/bindings/popup.xml:150:13
> withSubview/subview.buttons[0].onCommand@chrome://mochitests/content/browser/browser/modules/test/browser/browser_PageActions.js:290:9
> onCommand@resource:///modules/PageActions.jsm:987:7
> _makePanelViewNodeForAction/<@chrome://browser/content/browser-pageActions.js:173:9
> withSubview@chrome://mochitests/content/browser/browser/modules/test/browser/browser_PageActions.js:388:3
> Async*Tester_execTest/<@chrome://mochikit/content/browser-test.js:807:21
> TaskImpl_run@resource://gre/modules/Task.jsm:331:42
> promise callback*TaskImpl_handleResultValue@resource://gre/modules/Task.jsm:408:7
> TaskImpl_run@resource://gre/modules/Task.jsm:339:15
> promise callback*TaskImpl_handleResultValue@resource://gre/modules/Task.jsm:408:7
> TaskImpl_run@resource://gre/modules/Task.jsm:339:15
> TaskImpl@resource://gre/modules/Task.jsm:280:3
> asyncFunction@resource://gre/modules/Task.jsm:252:14
> Task_spawn@resource://gre/modules/Task.jsm:166:12
> Tester_execTest@chrome://mochikit/content/browser-test.js:798:9
> Tester.prototype.nextTest</<@chrome://mochikit/content/browser-test.js:697:9
> SimpleTest.waitForFocus/waitForFocusInner/focusedOrLoaded/<@chrome://mochikit/content/tests/SimpleTest/SimpleTest.js:795:59
The second and third are in the `withIframe` task. They have the same stack and TEST-PASS lines before them:
> 160 INFO TEST-PASS | browser/modules/test/browser/browser_PageActions.js | iframe localName - "iframe" == "iframe" -
> 161 INFO TEST-PASS | browser/modules/test/browser/browser_PageActions.js | panelNode should be non-null: [object XULElement] - {"_prevFocus":{"QueryInterface":"function QueryInterface() {\n [native code]\n}","get":"function get() {\n [native code]\n == true -
> 162 INFO TEST-PASS | browser/modules/test/browser/browser_PageActions.js | panelNode.id - "pageActionActivatedActionPanel" == "pageActionActivatedActionPanel" -
> 163 INFO Console message: [JavaScript Error: "SlidingPanelViews :: index -1 out of bounds" {file: "resource:///modules/PanelMultiView.jsm" line: 77}]
> set current@resource:///modules/PanelMultiView.jsm:77:13
> set currentView@resource:///modules/PanelMultiView.jsm:110:27
> set _currentSubView@resource:///modules/PanelMultiView.jsm:241:7
> hideAllViewsExcept@resource:///modules/PanelMultiView.jsm:486:5
> showSubView/this._currentShowPromise<@resource:///modules/PanelMultiView.jsm:593:11
> async*showSubView@resource:///modules/PanelMultiView.jsm:496:33
> showMainView@resource:///modules/PanelMultiView.jsm:448:14
> handleEvent@resource:///modules/PanelMultiView.jsm:1073:9
> hidePopup@chrome://global/content/bindings/popup.xml:150:13
> doCommandForAction@chrome://browser/content/browser-pageActions.js:495:5
> _makePanelButtonNodeForAction/<@chrome://browser/content/browser-pageActions.js:147:7
> doApply@chrome://mochikit/content/tests/SimpleTest/specialpowersAPI.js:148:10
> apply@chrome://mochikit/content/tests/SimpleTest/specialpowersAPI.js:213:30
> synthesizeMouseAtPoint@chrome://mochikit/content/tests/SimpleTest/EventUtils.js:425:7
> synthesizeMouse@chrome://mochikit/content/tests/SimpleTest/EventUtils.js:356:10
> synthesizeMouseAtCenter@chrome://mochikit/content/tests/SimpleTest/EventUtils.js:489:10
> withIframe@chrome://mochitests/content/browser/browser/modules/test/browser/browser_PageActions.js:499:3
> Async*Tester_execTest/<@chrome://mochikit/content/browser-test.js:807:21
> TaskImpl_run@resource://gre/modules/Task.jsm:331:42
> promise callback*TaskImpl_handleResultValue@resource://gre/modules/Task.jsm:408:7
> TaskImpl_run@resource://gre/modules/Task.jsm:339:15
> promise callback*TaskImpl_handleResultValue@resource://gre/modules/Task.jsm:408:7
> TaskImpl_run@resource://gre/modules/Task.jsm:339:15
> promise callback*TaskImpl_handleResultValue@resource://gre/modules/Task.jsm:408:7
> TaskImpl_run@resource://gre/modules/Task.jsm:339:15
> TaskImpl@resource://gre/modules/Task.jsm:280:3
> asyncFunction@resource://gre/modules/Task.jsm:252:14
> Task_spawn@resource://gre/modules/Task.jsm:166:12
> Tester_execTest@chrome://mochikit/content/browser-test.js:798:9
> Tester.prototype.nextTest</<@chrome://mochikit/content/browser-test.js:697:9
> SimpleTest.waitForFocus/waitForFocusInner/focusedOrLoaded/<@chrome://mochikit/content/tests/SimpleTest/SimpleTest.js:795:59
Reporter | ||
Updated•7 years ago
|
Priority: -- → P3
Whiteboard: [reserve-photon-structure]
Comment 1•7 years ago
|
||
Mike, do you know why/how this would happen? Seems the panelmultiview is confused.
Flags: needinfo?(mdeboer)
Comment 2•7 years ago
|
||
No, I don't know how/ when that would happen specifically. Generally speaking, the out of bounds error is thrown when the `currentView` setter is invoked with a panel that is not there - destroyed/ garbage collected or never added to the list dynamically using `_placeSubView()`.
Flags: needinfo?(mdeboer)
Comment 3•7 years ago
|
||
And sorry for the late reply; baby happened ;-)
Updated•2 years ago
|
Severity: normal → S3
You need to log in
before you can comment on or make changes to this bug.
Description
•