Open Bug 1193990 Opened 9 years ago Updated 2 years ago

Frequent exceptions from Developer Tools in the Browser Console

Categories

(DevTools :: Framework, defect)

41 Branch
defect

Tracking

(Not tracked)

People

(Reporter: vladan, Unassigned)

References

Details

In my Developer Edition 41 on Windows 8.1, I'm frequently seeing exceptions from devtools in the Browser Console, even when I'm not using the Dev Tools.

I only have Send-Tab-to-Device and Gecko Profiler extensions installed.

Some exceptions currently in my Browser Console:

Handler function DebuggerProgressListener.prototype.onStateChange threw an exception: [Exception... "Component returned failure code: 0x80004002 (NS_NOINTERFACE) [nsIWebProgress.DOMWindow]"  nsresult: "0x80004002 (NS_NOINTERFACE)"  location: "JS frame :: resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/devtools/server/actors/webbrowser.js :: TabActor.prototype._docShellsToWindows/< :: line 1176"  data: no]
Stack: TabActor.prototype._docShellsToWindows/<@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/devtools/server/actors/webbrowser.js:1176:11
TabActor.prototype._docShellsToWindows@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/devtools/server/actors/webbrowser.js:1173:1
TabActor.prototype._notifyDocShellsUpdate@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/devtools/server/actors/webbrowser.js:1199:19
DebuggerProgressListener.prototype.onStateChange<@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/devtools/server/actors/webbrowser.js:2191:1
makeInfallible/<@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/devtools/DevToolsUtils.js:83:14
Line: 1176, column: 0 DevToolsUtils.js:59:0

[Exception... "Component returned failure code: 0x80004002 (NS_NOINTERFACE) [nsIWebProgress.DOMWindow]"  nsresult: "0x80004002 (NS_NOINTERFACE)"  location: "JS frame :: chrome://browser/content/browser.js :: TabsProgressListener.onStateChange :: line 15669"  data: no] tabbrowser.xml:542:0

Handler function DebuggerProgressListener.prototype.onStateChange threw an exception: [Exception... "Component returned failure code: 0x80004002 (NS_NOINTERFACE) [nsIWebProgress.DOMWindow]"  nsresult: "0x80004002 (NS_NOINTERFACE)"  location: "JS frame :: resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/devtools/server/actors/webbrowser.js :: DebuggerProgressListener.prototype.onStateChange< :: line 2194"  data: no]
Stack: DebuggerProgressListener.prototype.onStateChange<@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/devtools/server/actors/webbrowser.js:2194:9
makeInfallible/<@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/devtools/DevToolsUtils.js:83:14
Line: 2194, column: 0 DevToolsUtils.js:59:0

TypeError: this.transport is null main.js:1346:5
Alex, this looks like maybe something that was touched in Bug 977043.  Any way you can investigate what's going on?

I also see this stdout when running with a clean profile and the --jsconsole flag:

Handler function threw an exception: TypeError: threadActor is null
Stack: TabActor.prototype._windowReady@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/devtools/server/actors/webbrowser.js:1651:1
TabActor.prototype._changeTopLevelDocument/<@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/devtools/server/actors/webbrowser.js:1588:7
makeInfallible/<@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/devtools/DevToolsUtils.js:83:14
Line: 1651, column: 1
Component: Developer Tools → Developer Tools: Framework
Flags: needinfo?(poirot.alex)
See Also: → 977043
I'm not able to reproduce any of those (DOMWindow / threadActor).
I even tried installing the same addon than you or the clean profile and jsconsole.

I'll be looking in my console while working on other stuff...
but that would be handy if you have step to reproduce these exception!
Flags: needinfo?(poirot.alex)
Vladan, Does it reproduce on some specific websites? I can't reproduce both exceptions. Do you have a particular step to reproduce it?

Brian, note that the threadActor exception you hit is very different from the DOMWindow one reported in comment 0.
Flags: needinfo?(vdjeric)
(In reply to Alexandre Poirot [:ochameau] from comment #3)
> Brian, note that the threadActor exception you hit is very different from
> the DOMWindow one reported in comment 0.

Should I file a new bug for that?  Can you reproduce it?
(In reply to Brian Grinstead [:bgrins] from comment #4)
> (In reply to Alexandre Poirot [:ochameau] from comment #3)
> > Brian, note that the threadActor exception you hit is very different from
> > the DOMWindow one reported in comment 0.
> 
> Should I file a new bug for that?  Can you reproduce it?

I haven't seen it while looking in all these DOMWindow exceptions.
Nor while the style inspector broke.

Yes, you should, especially if you have a STR!
(In reply to Alexandre Poirot [:ochameau] from comment #3)
> Vladan, Does it reproduce on some specific websites? I can't reproduce both
> exceptions. Do you have a particular step to reproduce it?

I don't have steps to reproduce, but I'll keep an eye on my DevEdition browser consoles
Flags: needinfo?(vdjeric)
Here is an example:

./mach run --jsconsole
Open Customize mode from the hamburger menu

I see this in the browser console:

  Handler function threw an exception: [Exception... "Component returned failure code: 0x80004002 (NS_NOINTERFACE) [nsIWebProgress.DOMWindow]"  nsresult: "0x80004002 (NS_NOINTERFACE)"  location: "JS frame :: resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/devtools/server/actors/webbrowser.js :: TabActor.prototype._docShellsToWindows/< :: line 1176"  data: no]
  Stack: TabActor.prototype._docShellsToWindows/<@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/devtools/server/actors/webbrowser.js:1176:11
  TabActor.prototype._docShellsToWindows@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/devtools/server/actors/webbrowser.js:1173:1
  TabActor.prototype._notifyDocShellsUpdate@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/devtools/server/actors/webbrowser.js:1199:19
  TabActor.prototype._onDocShellCreated/<@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/devtools/server/actors/webbrowser.js:1151:7
  makeInfallible/<@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/devtools/DevToolsUtils.js:83:14
  Line: 1176, column: 0

Can you reproduce this?
Flags: needinfo?(poirot.alex)
This exception, the one from comment 7 is related to bug 1142752. It relates to _onDocShellCreated method. I have a patch there, but it has been backed out for test failure.
This is different stack trace than comment 0, where the exception comes from DebuggerProgressListener.prototype.onStateChange.
I would be really interested to have an STR for this kind of stacks. I wasn't able to reproduce such stack. Also note that some code from browser.js is also throwing, so that also happen to fail in Firefox frontend codebase, not just devtools one.
Flags: needinfo?(poirot.alex)
I don't know if this will be of any help, but I'll post it anyway.

I have a user of my FEBE extension who reported the backup is running very slowly.  I had him send me a dump of the browser console and I noticed the following exception mentioned several (~145) times:

Handler function NM_observeActivity threw an exception: TypeError: aChannel.loadInfo is null
Stack: NetworkMonitor.prototype._createNetworkEvent@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/devtools/toolkit ... r.js:843:1
NM__onRequestHeader@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/devtools/toolkit ... r.js:906:1
NM_observeActivity@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/devtools/toolkit ... r.js:682:7
makeInfallible/<@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/devtools/DevToolsUtils.js:83:14

He is using Fx 42.

The entire dump can be seen at http://www.customsoftwareconsult.com/forum/viewtopic.php?f=5&p=16381#p16373
Product: Firefox → DevTools
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.