DescriptionRemove unsound asserts in the DOMWindow destructor.
DOMWindow creates its sub-objects (Location, History, ..) on first
access, and when the window is closed and detached from its frame,
those sub-objects are cleared out. When the DOMWindow object is
subsequently destructed, we assert that those objects have all been
cleared (i.e., that reset() has been called and the expected window
shutdown sequence was followed.)
However, the wrapper object is still alive, so if scripts access the
sub-objects of this detached&reset window object, they'll be created
again. As they need to be, but this invalidates the condition that the
destructor asserts for -- one or more of these objects will now be
set.
Remove the invalid asserts, but do check that reset()
has been called (at least once) before a DOMWindow is destructed.
R=abarth@chromium.org
BUG=351133
Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=172680
Patch Set 1 #Patch Set 2 : Use ASSERT_DISABLED #
Total comments: 2
Patch Set 3 : Invert and use ASSERT_ENABLED #
Messages
Total messages: 7 (0 generated)
|