Skip to content
  • adamk@chromium.org's avatar
    Remove bogus assertions from ChildListMutationScope · c2896149
    adamk@chromium.org authored
    https://bugs.webkit.org/show_bug.cgi?id=97372
    
    Reviewed by Ryosuke Niwa.
    
    Source/WebCore:
    
    Some asserts (and their accompanying comment) were trying to enforce
    proper usage of ChildListMutationScope from WebCore, but in the
    presence of MutationEvents they could fail due to arbitrary script
    execution.
    
    This change gets rid of those asserts and adds tests exercising
    the (pre-existing) codepaths for handling these out-of-order cases.
    Without this patch, these tests ASSERT in debug builds.
    
    Tests: fast/mutation/added-out-of-order.html
           fast/mutation/removed-out-of-order.html
    
    * dom/ChildListMutationScope.cpp:
    (WebCore::ChildListMutationAccumulator::childAdded):
    (WebCore::ChildListMutationAccumulator::willRemoveChild):
    * dom/ChildListMutationScope.h:
    (WebCore):
    
    LayoutTests:
    
    * fast/mutation/added-out-of-order-expected.txt: Added.
    * fast/mutation/added-out-of-order.html: Added.
    * fast/mutation/removed-out-of-order-expected.txt: Added.
    * fast/mutation/removed-out-of-order.html: Added.
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129288 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    c2896149