Created attachment 580578 [details] testcase ###!!! ASSERTION: Don't schedule the same document multiple times: 'mFrameRequestCallbackDocs.IndexOf(aDocument) == mFrameRequestCallbackDocs.NoIndex', file layout/base/nsRefreshDriver.cpp, line 533
Worksforme with an m-c debug build pulled today (on Mac).
I can reproduce with the same rev (built from http://hg.mozilla.org/mozilla-central/rev/63bff373cb94). Hmm. I'm on Mac OS X 10.6, if that matters.
I am too... I guess I'll try building from your rev and reproducing. Using a clean profile?
I can reproduce with a clean profile. (Tested with rev 7e74a12601a4 this time.)
OK, now I can reproduce; I needed a narrower browser window to trigger tab scrolling. This is totally my fault: canceling a callback doesn't unregister us (on purpose, sorta), but other code depends on the invariant that registered == have callbacks.
Created attachment 581883 [details] [diff] [review] Manage our scheduled state better when animation frame requests are canceled.