We provide a reason as to why active DOM objects are suspended, but we don't check when resuming that the reason we're resuming matches the reason we suspended. This could potentially lead to cases in which we attempt to resume multiple times with the first one not matching the reason we suspended. This will lead to us potentially resuming early or resuming multiple times. We should only resume if the reason we're resuming matches the reason we suspended.
Created attachment 202334 [details] Patch
Comment on attachment 202334 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=202334&action=review r=me > Source/WebCore/ChangeLog:12 > + No new tests, code path should not be hit currently. Nit: The code path is hit, there just isn't a change in behavior. > Source/WebCore/dom/ScriptExecutionContext.h:179 > + ActiveDOMObject::ReasonForSuspension reasonForSuspendingActiveDOMObjects() { return m_reasonForSuspendingActiveDOMObjects; } const
Committed r150560: <http://trac.webkit.org/changeset/150560>