Closed Bug 1329934 Opened 8 years ago Closed 8 years ago

Need to call nsDocument::EnsureOnloadBlocker in nsDocument::SetScriptGlobalObject when mScriptGlobalObject changes from null to non-null

Categories

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

defect
Not set
normal

Tracking

()

RESOLVED DUPLICATE of bug 1329403

People

(Reporter: jwwang, Unassigned)

Details

http://searchfox.org/mozilla-central/rev/8144fcc62054e278fe5db9666815cc13188c96fa/dom/base/nsDocument.cpp#8551
BlockOnload() might be called before mScriptGlobalObject is set.

Should we call EnsureOnloadBlocker() when mScriptGlobalObject is set and mOnloadBlockCount > 0 to add the onload blocker?
Flags: needinfo?(bugs)
Oh, hmm, yes maybe. Perhaps nsDocument::SetScriptGlobalObject should call  EnsureOnloadBlocker();
In practice...I wonder if there are cases when BlockOnload() isn't then called later.
Flags: needinfo?(bugs)
HTMLMediaElement calls BlockOnload() before loading resource, and calls UnblockOnload() after loading the first frame. So it is possible that BlockOnload() is called only once before mScriptGlobalObject is set.

This issue is particularly obvious in VideoDocument and is also what we tried to fix in bug 608634 comment 632 ~ bug 608634 comment 638.
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → DUPLICATE
Component: DOM → DOM: Core & HTML
You need to log in before you can comment on or make changes to this bug.