Closed Bug 684564 Opened 13 years ago Closed 13 years ago

backtrace in cookie_monster.js

Categories

(Add-on SDK Graveyard :: General, defect)

x86_64
Linux
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED INVALID

People

(Reporter: mcepl, Assigned: stomlinson)

Details

Suddenly I am getting these backtraces in ~/.xsession-errors with Jetpack 8ce9140823df29d7490198fae4834cabc44c189e and Mozilla/5.0 (X11; Linux x86_64; rv:6.0) Gecko/20100101 Firefox/6.0 (Fedora package):

error: An exception occurred.
Traceback (most recent call last):
  File "https://bugzilla.redhat.com/show_bug.cgi?id=729150", line 4547, in null
  File "https://engstats.redhat.com/piwik/piwik.js", line 27, in null
  File "https://engstats.redhat.com/piwik/piwik.js", line 22, in aq
  File "https://engstats.redhat.com/piwik/piwik.js", line 21, in ag
  File "https://engstats.redhat.com/piwik/piwik.js", line 15, in s
  File "resource://browserid_addon-at-mozillalabs-dot-com-api-utils-lib/observer-service.js", line 174, in null
    this.callback.call(this.thisObject, subject, data);
  File "resource://browserid_addon-at-mozillalabs-dot-com-browserid_addon-lib/sessions/cookie_monster.js", line 101, in onCookieChange
    var cookieInfo = subject.QueryInterface(Ci.nsICookie2);
[Exception... "Component returned failure code: 0x80004002 (NS_NOINTERFACE) [nsISupports.QueryInterface]"  nsresult: "0x80004002 (NS_NOINTERFACE)"  location: "JS frame :: resource://browserid_addon-at-mozillalabs-dot-com-api-utils-lib/securable-module.js -> resource://browserid_addon-at-mozillalabs-dot-com-browserid_addon-lib/sessions/cookie_monster.js :: onCookieChange :: line 101"  data: no]
error: An exception occurred.

Everything seems to be working correctly otherwise, just this happens in the stderr.
What if you update to the most recent SDK commit?

Do you have the changeset for the SDK that you were using prior to this?

What's line 101 look like in cookie_monster.js?
Also, did you get updated to 6.0.1 recently? (And is that when this started showing up?)
(In reply to Wes Kocher (:KWierso) (Jetpack Bugmaster) from comment #2)
> Also, did you get updated to 6.0.1 recently? (And is that when this started
> showing up?)

possibly ... we have here Firefox 6.0 with patched XULRunner.

And yes, it happened to me just now with updated extension build on the jetpack 582d24892cceb0f1a5e6e6fb7f1ebc3e12ade20a

error: An exception occurred.
Traceback (most recent call last):
  File "https://bugzilla.redhat.com/show_bug.cgi?id=735536", line 30668, in null
  File "https://engstats.redhat.com/piwik/piwik.js", line 27, in null
  File "https://engstats.redhat.com/piwik/piwik.js", line 22, in aq
  File "https://engstats.redhat.com/piwik/piwik.js", line 21, in ag
  File "https://engstats.redhat.com/piwik/piwik.js", line 15, in s
  File "resource://browserid_addon-at-mozillalabs-dot-com-api-utils-lib/observer-service.js", line 174, in null
    this.callback.call(this.thisObject, subject, data);
  File "resource://browserid_addon-at-mozillalabs-dot-com-browserid_addon-lib/sessions/cookie_monster.js", line 101, in onCookieChange
    var cookieInfo = subject.QueryInterface(Ci.nsICookie2);
[Exception... "Component returned failure code: 0x80004002 (NS_NOINTERFACE) [nsISupports.QueryInterface]"  nsresult: "0x80004002 (NS_NOINTERFACE)"  location: "JS frame :: resource://browserid_addon-at-mozillalabs-dot-com-api-utils-lib/securable-module.js -> resource://browserid_addon-at-mozillalabs-dot-com-browserid_addon-lib/sessions/cookie_monster.js :: onCookieChange :: line 101"  data: no]
error: An exception occurred.
Traceback (most recent call last):
  File "https://bugzilla.redhat.com/show_bug.cgi?id=735536", line 30668, in null
  File "https://engstats.redhat.com/piwik/piwik.js", line 27, in null
  File "https://engstats.redhat.com/piwik/piwik.js", line 22, in aq
  File "https://engstats.redhat.com/piwik/piwik.js", line 21, in ag
  File "https://engstats.redhat.com/piwik/piwik.js", line 15, in s
  File "resource://browserid_addon-at-mozillalabs-dot-com-api-utils-lib/observer-service.js", line 174, in null
    this.callback.call(this.thisObject, subject, data);
  File "resource://browserid_addon-at-mozillalabs-dot-com-browserid_addon-lib/sessions/cookie_monster.js", line 101, in onCookieChange
    var cookieInfo = subject.QueryInterface(Ci.nsICookie2);
[Exception... "Component returned failure code: 0x80004002 (NS_NOINTERFACE) [nsISupports.QueryInterface]"  nsresult: "0x80004002 (NS_NOINTERFACE)"  location: "JS frame :: resource://browserid_addon-at-mozillalabs-dot-com-api-utils-lib/securable-module.js -> resource://browserid_addon-at-mozillalabs-dot-com-browserid_addon-lib/sessions/cookie_monster.js :: onCookieChange :: line 101"  data: no]
Shane, Lloyd: any thoughts on what might be going on here?
Whiteboard: [triage:followup]
Thanks Myk, this is most definitely mine from the Sessions API addon.  I am listening for changes to cookies using the "observer-service" and attaching a listener on the "cookie-changed" message.  In the listener, I am doing QueryInterface on the subject.  

The code in question is:

function onCookieChange(subject, data) {                                                                                     var cookieInfo = subject.QueryInterface(Ci.nsICookie2);
  var name = cookieInfo.name;
  var host = cookieInfo.host;

  // callHandlers is defined elsewhere
  callHandlers.call(this, host, name, cookieInfo.value);
}

Is the problem be that I am assuming the subject is an nsICookie2 when it could in fact be an nsIArray of nsICookie2 interfaces if data is "batch-deleted"?
(In reply to Shane Tomlinson from comment #5)
> Is the problem be that I am assuming the subject is an nsICookie2 when it
> could in fact be an nsIArray of nsICookie2 interfaces if data is
> "batch-deleted"?

Hmm, it could well be!  Note also the "cleared" and "reload" values for `data`, for which `subject` will be null:

http://mxr.mozilla.org/mozilla-central/source/netwerk/cookie/nsICookieService.idl#67
Assignee: nobody → stomlinson
Resolving, as the issue is with BrowserID and being tracked by its issues tracker.
Status: NEW → RESOLVED
Closed: 13 years ago
Resolution: --- → INVALID
Whiteboard: [triage:followup]
Thanks Myk,
  I was unsure of the process here, we have been keeping bugs "open" until QA validates the fix, but since this is in our issue tracker, I see no reason to keep this open.  The link to our issue again is: https://github.com/mozilla/browserid_addon/issues/83
You need to log in before you can comment on or make changes to this bug.