Closed Bug 616252 Opened 14 years ago Closed 14 years ago

html5 video on youtube is broken (NS_ERROR_XPC_NOT_ENOUGH_ARGS from addEventListener)

Categories

(Tech Evangelism Graveyard :: English US, defect)

x86
Windows 7
defect
Not set
critical

Tracking

(blocking2.0 betaN+)

RESOLVED FIXED
Tracking Status
blocking2.0 --- betaN+

People

(Reporter: vlad, Unassigned)

References

Details

Trying to view a number of html5 videos on youtube, such as:

http://www.youtube.com/watch?v=itmNiTwHOsM
http://www.youtube.com/watch?v=FNkTFao5_UI

results in a black screen and the progress bar showing NaN/NaN.  Just regular video playback works fine, so this might be youtube failure, but it looks quite bad.
You may need to force HTML5 mode to on in order to see what Vlad's seeing:

http://www.youtube.com/watch?v=itmNiTwHOsM&html5=1
http://www.youtube.com/watch?v=FNkTFao5_UI&html5=1

Works in Chrome, and they get a "HTML5 WEBM" whereas I only see "HTML5"
12:55:58.006: Exception: uncaught exception: [Exception... "Not enough arguments"  nsresult: "0x80570001 (NS_ERROR_XPC_NOT_ENOUGH_ARGS)"  location: "JS frame :: http://s.ytimg.com/yt/jsbin/www-player-vflvB8nZa.js :: <TOP_LEVEL> :: line 94"  data: no] Source File:  Line: 0, Column: 0 Category: content javascript

shows up
Assignee: nobody → general
blocking2.0: --- → betaN+
Component: Video/Audio → JavaScript Engine
QA Contact: video.audio → general
http://grab.by/7H6I (Chrome on left, nightly on right)
If you append &Debug=true to the URL, there's a bunch of console logging that helps narrow down where it's failing:

Chrome:
www-player-vflvB8nZa.js:18 [  0.012s] [yt.player.logger] Setting target ID: video-player
www-player-vflvB8nZa.js:18 [  0.012s] [yt.player.logger] Initializing the player
www-player-vflvB8nZa.js:18 [  0.013s] [yt.player.logger] Setting video id: FNkTFao5_UI
www-player-vflvB8nZa.js:18 [  0.021s] [yt.player.logger] decorate called
www-player-vflvB8nZa.js:18 [  0.022s] [yt.player.logger] Creating video element
www-player-vflvB8nZa.js:18 [  0.023s] [yt.player.logger] Attaching video listeners

Firefox:
[ 0.066s] [yt.player.logger] Setting target ID: video-player
www-pl...8nZa.js (line 18)
[ 0.071s] [yt.player.logger] Initializing the player
www-pl...8nZa.js (line 18)
[ 0.077s] [yt.player.logger] Setting video id: FNkTFao5_UI
www-pl...8nZa.js (line 18)
[ 0.837s] [yt.player.logger] decorate called
www-pl...8nZa.js (line 18)
uncaught exception: [Exception... "Not enough arguments" nsresult: "0x80570001 (NS_ERROR_XPC_NOT_ENOUGH_ARGS)" location: "JS frame :: http://s.ytimg.com/yt/jsbin/www-player-vflvB8nZa.js :: <TOP_LEVEL> :: line 94" data: no]
It's failing the same way in a nightly from a month ago (Gecko/20101103).  Works as expected in Opera 10.62.
It's failing at:

dom_quickstubs.cpp:nsIDOMNSEventTarget_AddEventListener where argc==2
    if (argc < 3)
        return xpc_qsThrow(cx, NS_ERROR_XPC_NOT_ENOUGH_ARGS);

DumpJSStack gives:

0 anonymous(e = "handleWatchPagePlayerStateChange", d = "onStateChange") ["http:
//s.ytimg.com/yt/jsbin/www-player-vflvB8nZa.js":94]
    g = [function]
    this = [object Object]
1 anonymous(b = undefined, a = [object HTMLDivElement @ 0x1400ddc8 (native @ 0x1
1dcbf90)]) ["http://s.ytimg.com/yt/jsbin/www-core-vflWCrQPZ.js":254]
    c = undefined
    this = [object Window @ 0x11dc1558 (native @ 0x12ef7bc8)]
2 anonymous() ["http://s.ytimg.com/yt/jsbin/www-core-vflWCrQPZ.js":295]
    a = [object HTMLDivElement @ 0x1400ddc8 (native @ 0x11dcbf90)]
    this = [object Window @ 0x11dc1558 (native @ 0x12ef7bc8)]
3 anonymous([object Object]) ["http://s.ytimg.com/yt/jsbin/www-player-vflvB8nZa.
js":96]
    a = undefined
    this = [object Window @ 0x11dc1558 (native @ 0x12ef7bc8)]
4 anonymous(b = [object HTMLDivElement @ 0x1400ddc8 (native @ 0x11dcbf90)], a =
[object Object]) ["http://s.ytimg.com/yt/jsbin/www-player-vflvB8nZa.js":96]
    c = [function]
    this = [object Window @ 0x11dc1558 (native @ 0x12ef7bc8)]
5 anonymous(a = [object HTMLDivElement @ 0x1400ddc8 (native @ 0x11dcbf90)]) ["ht
tp://s.ytimg.com/yt/jsbin/www-player-vflvB8nZa.js":89]
    b = null
    this = [object Object]
6 anonymous([object Object]) ["http://s.ytimg.com/yt/jsbin/www-player-vflvB8nZa.
js":80]
    a = [object HTMLDivElement @ 0x1400ddc8 (native @ 0x11dcbf90)]
    this = [object Object]
7 anonymous(g = [object Object]) ["http://s.ytimg.com/yt/jsbin/www-player-vflvB8
nZa.js":28]
    this = [object HTMLDocument @ 0x11dc8988 (native @ 0x12f04658)]
We're investigating changing the 3 args required nature of addEventListener in 613634.  Until then, this is just another tech-evang issue.
I've emailed Kevin Carle at YouTube.
Depends on: 613634
Summary: html5 video on youtube seems broken → html5 video on youtube is broken (NS_ERROR_XPC_NOT_ENOUGH_ARGS from addEventListener)
Assignee: general → english-us
Component: JavaScript Engine → English US
Product: Core → Tech Evangelism
QA Contact: general → english-us
This seems to be fixed.
Status: NEW → RESOLVED
Closed: 14 years ago
Resolution: --- → FIXED
Product: Tech Evangelism → Tech Evangelism Graveyard
You need to log in before you can comment on or make changes to this bug.