Reviewed by Maciej
authorbeidson <beidson@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 21 Jul 2006 01:16:21 +0000 (01:16 +0000)
committerbeidson <beidson@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 21 Jul 2006 01:16:21 +0000 (01:16 +0000)
commit244906247d1f8a465b3b92b3b82cb364d7711f3c
tree593ca76a5bcfc4bb8fc89e89cfa1e447fcdd2b29
parenta4f1659445b12faa542ff907a749915996ad1715
    Reviewed by Maciej

        fixed <rdar://problem/4611303> REGRESSION: repro crash in WebCore::EventTargetNode::dispatchWindowEvent at aeropostale.com
        There was an attempt to deref an EventListener that got cleaned up in GC.  Changing Document's EventListener list from
        vanilla ptrs to refptrs to prevent GC, following EventTargetNode's proven example.

        * dom/Document.cpp:
        (WebCore::Document::Document):
        (WebCore::Document::clear):
        (WebCore::Document::handleWindowEvent):
        (WebCore::Document::getHTMLWindowEventListener):
        (WebCore::Document::removeHTMLWindowEventListener):
        (WebCore::Document::removeWindowEventListener):
        (WebCore::Document::hasWindowEventListener):
        Changed all of the list iterators to work with RefPtrs instead of vanilla ptrs

        * dom/Document.h:
        Changed the EventListener list to be a vanilla pointer list to a refptr list

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15548 268f45cc-cd09-0410-ab3c-d52691b4dbfc
WebCore/ChangeLog
WebCore/dom/Document.cpp
WebCore/dom/Document.h