Closed Bug 763247 Opened 10 years ago Closed 10 years ago

"ASSERTION: rescheduling interval timeout without a timer" with setInterval, sync XHR, mozRequestAnimationFrame

Categories

(Core :: DOM: Core & HTML, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla16

People

(Reporter: jruderman, Assigned: froydnj)

References

Details

(Keywords: assertion, testcase)

Attachments

(3 files)

Attached file testcase
###!!! ASSERTION: rescheduling interval timeout without a timer!: 'timeout->mTimer', file dom/base/nsGlobalWindow.cpp, line 9337

This assertion was added in bug 748464.
Attached file stack trace
Nathan, can you take a look, please?  Note the sync XHR spinning the event loop in there...
Assignee: nobody → nfroyd
Depends on: 748464
Ah, yes, in RescheduleTimeout, we say:

+  if (!aTimeout->mTimer) {
+    NS_ASSERTION(IsFrozen() || mTimeoutsSuspendDepth,
+                 "How'd our timer end up null if we're not frozen or "
+                 "suspended?");
+
+    aTimeout->mTimeRemaining = delay;
+    return true;
+  }

which will wind up hitting that added assertion.  I'll prepare a patch to remove it.
Attached patch patchSplinter Review
Should be easy enough to review!
Attachment #632813 - Flags: review?(bzbarsky)
Comment on attachment 632813 [details] [diff] [review]
patch

r=me
Attachment #632813 - Flags: review?(bzbarsky) → review+
https://hg.mozilla.org/integration/mozilla-inbound/rev/eaab1f7507f7
Status: NEW → ASSIGNED
OS: Mac OS X → All
Hardware: x86_64 → All
Target Milestone: --- → mozilla16
https://hg.mozilla.org/mozilla-central/rev/eaab1f7507f7
Status: ASSIGNED → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Component: DOM → DOM: Core & HTML
You need to log in before you can comment on or make changes to this bug.