Closed Bug 785115 Opened 12 years ago Closed 7 years ago

pageThumbs.jsm:133 nsIDOMHTMLCanvasElement.mozFetchAsStream Exception

Categories

(Firefox :: Tabbed Browser, defect)

17 Branch
x86
Linux
defect
Not set
normal

Tracking

()

RESOLVED INVALID

People

(Reporter: linux.user.since.2002, Unassigned)

Details

Recently observed symptom:

TreeStyleTab addon no longer works as expected:
* Tabs open in the background do not appear in the tree.
* Using keyboard to switch tabs or clicking the new tab button seems to force a resync.
* Closing tabs via mouse is difficult at best.
* Active tab highlighting desync issues, where current tab may not be indicated.
* Switching tabs is difficult, as you may change to a hidden newly opened tab, rather than the intended tab.

Discovered the following error is repeatedly and continually logged in the error console:

Error: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIDOMHTMLCanvasElement.mozFetchAsStream]"  nsresult: "0x80004005 (NS_ERROR_FAILURE)"  location: "JS frame :: resource:///modules/PageThumbs.jsm :: <TOP_LEVEL> :: line 133"  data: no]
Source File: resource:///modules/PageThumbs.jsm
Line: 133

(Note that there are no TreeStyleTab errors logged in the error console beyond the few at app-startup).

The line 133 referenced in the exception begins with 'canvas' in the excerpt below, and references bug 744100:

    // Fetch the canvas data on the next event loop tick so that we allow
    // some event processing in between drawing to the canvas and encoding
    // its data. We want to block the UI as short as possible. See bug 744100.
    Services.tm.currentThread.dispatch(function () {
      canvas.mozFetchAsStream(aCallback, this.contentType);

Yet bug 744100 does not have any documented commits in the comments.
Mercurial annotation indicates this line last updated as part of changeset 3411e98278d6 (re: bug 779618).

This may also be due to an interaction with the addon LoadTabsProgressively.
(Want to load all tabs progressively, not merely restored tabs).
Permitting a limited number of tabs to load, those appear to have opened as expected, then observed symptom returned.
Will try a new session shortly with the addon disabled to verify.

Speculating, seems that this may be trying to get a thumbnail of a page that is being deferred by LoadTabsProgressively, resulting in an exception, which is perhaps interfering with TreeStyleTab until some tab action occurs that does not trigger a Thumbnail?

TreeStyleTab + LoadTabsProgressively worked in nightly 17.0a1 not too long ago...
Disabled LoadTabsProgressively addon and restarted the browser.  Tabs opened in the background appeared immediately as before; however, the exception was still being logged in the console and all other issues persisted.

Re-enabled LoadTabsProgressively addon...
Component: Untriaged → Tabbed Browser
Seems TreeStyleTab was a red herring.
Disabling that extension did not stop the exception from being thrown.
I can reproduce this (besides FBTest internal bugs) when Firebug 1.10.3 + FBTest 1.11b1 is installed:

https://getfirebug.com/releases/fbtest/1.11/

Tested using FF 18.0a1 (2012-09-04) on Win7.
I didn't investigate any further yet, though.

Sebastian
Btw. it's unrelated to Firebug. You just have to install FBTest.

Sebastian
Looks like it's caused by adding command line options.
When I comment out the following line in the chrome.manifest file of FBTest, the error does not occur:

category command-line-handler  m-FBTest @mozilla.org/commandlinehandler/general-startup;1?type=FBTest

Sebastian
Old style addons have been removed in FF57, as have the XPCOM interfaces referred to in this bug. Invalidating.
Status: UNCONFIRMED → RESOLVED
Closed: 7 years ago
Resolution: --- → INVALID
You need to log in before you can comment on or make changes to this bug.