Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Obscure error in FF20

43 views
Skip to first unread message

Arnaud Didry

unread,
Apr 12, 2013, 6:49:22 AM4/12/13
to
Hi,

We are experiencing random and obscure errors since the FF20 update : "TypeError: Value does not implement interface Element".

The stack trace always point to the same line of code : `if (node.id && !node.id.tagName && !node.id.item) {id = node.id;}` (from YUI3 [1]). The caller also ensure that `node.nodeType === 1` [2]

Another particularity of the bug is that it seems to always occurs inside an IndexedDB callback.

We're still trying to find a way to produce a failing test case. We deployed a patch which wrap the line in a try/catch to log the `node` variable but since then the error doesn't seems to occur anymore.

It seems related to the bug #821606 [3]. Do you think of something else which can cause this ?

Should I file a ticket on bugzilla ?

Thanks !

Arnaud


[1] https://github.com/yui/yui3/blob/v3.8.0/src/dom/js/dom-core.js#L62-L63
[2] https://github.com/yui/yui3/blob/v3.8.0/src/dom/js/selector-native.js#L220
[3] https://bugzilla.mozilla.org/show_bug.cgi?id=821606

Boris Zbarsky

unread,
Apr 12, 2013, 2:14:09 PM4/12/13
to
On 4/12/13 6:49 AM, Arnaud Didry wrote:
> We are experiencing random and obscure errors since the FF20 update : "TypeError: Value does not implement interface Element".

That's certainly the error you'd get if something that's not an element
has an element method called on it...

> The stack trace always point to the same line of code : `if (node.id && !node.id.tagName && !node.id.item) {id = node.id;}` (from YUI3 [1]). The caller also ensure that `node.nodeType === 1` [2]

That's quite odd, for sure!

Are you able to log any information about this when it fails? Knowing
node.localName would really help.

> We're still trying to find a way to produce a failing test case. We deployed a patch which wrap the line in a try/catch to log the `node` variable but since then the error doesn't seems to occur anymore.

_That_ indicates some sort of JIT bug to me, unfortunately. :( I guess
that answers my question about logging...

What if you put the try/catch higher up the callstack?

> Should I file a ticket on bugzilla ?

Please, with whatever information you have!

-Boris

Arnaud Didry

unread,
Apr 15, 2013, 1:08:28 PM4/15/13
to
Hi Boris,

Thank you for your response, I filed a ticket on bugzilla : https://bugzilla.mozilla.org/show_bug.cgi?id=861947

We don't have much more informations, but we're now sure that the error happens on this check `node.id.tagName`. Hope this helps a little.

For now we are going to monkey patch YUI3 to remove the checks against IE<8 for FF20.

Thanks

Arnaud

Boris Zbarsky

unread,
Apr 15, 2013, 1:23:49 PM4/15/13
to
On 4/15/13 1:08 PM, Arnaud Didry wrote:
> Thank you for your response, I filed a ticket on bugzilla : https://bugzilla.mozilla.org/show_bug.cgi?id=861947

Thank you. Let's follow up there....

-Boris
0 new messages