OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) |
3 * (C) 1999 Antti Koivisto (koivisto@kde.org) | 3 * (C) 1999 Antti Koivisto (koivisto@kde.org) |
4 * (C) 2001 Dirk Mueller (mueller@kde.org) | 4 * (C) 2001 Dirk Mueller (mueller@kde.org) |
5 * (C) 2006 Alexey Proskuryakov (ap@webkit.org) | 5 * (C) 2006 Alexey Proskuryakov (ap@webkit.org) |
6 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2011, 2012 Apple Inc. All r
ights reserved. | 6 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2011, 2012 Apple Inc. All r
ights reserved. |
7 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.t
orchmobile.com/) | 7 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.t
orchmobile.com/) |
8 * Copyright (C) 2008, 2009, 2011, 2012 Google Inc. All rights reserved. | 8 * Copyright (C) 2008, 2009, 2011, 2012 Google Inc. All rights reserved. |
9 * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies) | 9 * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies) |
10 * Copyright (C) Research In Motion Limited 2010-2011. All rights reserved. | 10 * Copyright (C) Research In Motion Limited 2010-2011. All rights reserved. |
(...skipping 518 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
529 #if !ENABLE(OILPAN) | 529 #if !ENABLE(OILPAN) |
530 ASSERT(!hasGuardRefCount()); | 530 ASSERT(!hasGuardRefCount()); |
531 // With Oilpan, either the document outlives the visibility observers | 531 // With Oilpan, either the document outlives the visibility observers |
532 // or the visibility observers and the document die in the same GC round. | 532 // or the visibility observers and the document die in the same GC round. |
533 // When they die in the same GC round, the list of visibility observers | 533 // When they die in the same GC round, the list of visibility observers |
534 // will not be empty on Document destruction. | 534 // will not be empty on Document destruction. |
535 ASSERT(m_visibilityObservers.isEmpty()); | 535 ASSERT(m_visibilityObservers.isEmpty()); |
536 | 536 |
537 if (m_templateDocument) | 537 if (m_templateDocument) |
538 m_templateDocument->m_templateDocumentHost = nullptr; // balanced in ens
ureTemplateDocument(). | 538 m_templateDocument->m_templateDocumentHost = nullptr; // balanced in ens
ureTemplateDocument(). |
539 #endif | |
540 | 539 |
541 m_scriptRunner.clear(); | 540 m_scriptRunner.clear(); |
542 | 541 |
543 // FIXME: Oilpan: Not removing event listeners here also means that we do | 542 // FIXME: Oilpan: Not removing event listeners here also means that we do |
544 // not notify the inspector instrumentation that the event listeners are | 543 // not notify the inspector instrumentation that the event listeners are |
545 // gone. The Document and all the nodes in the document are gone, so maybe | 544 // gone. The Document and all the nodes in the document are gone, so maybe |
546 // that is OK? | 545 // that is OK? |
547 #if !ENABLE(OILPAN) | |
548 removeAllEventListenersRecursively(); | 546 removeAllEventListenersRecursively(); |
549 | 547 |
550 // Currently we believe that Document can never outlive the parser. | 548 // Currently we believe that Document can never outlive the parser. |
551 // Although the Document may be replaced synchronously, DocumentParsers | 549 // Although the Document may be replaced synchronously, DocumentParsers |
552 // generally keep at least one reference to an Element which would in turn | 550 // generally keep at least one reference to an Element which would in turn |
553 // has a reference to the Document. If you hit this ASSERT, then that | 551 // has a reference to the Document. If you hit this ASSERT, then that |
554 // assumption is wrong. DocumentParser::detach() should ensure that even | 552 // assumption is wrong. DocumentParser::detach() should ensure that even |
555 // if the DocumentParser outlives the Document it won't cause badness. | 553 // if the DocumentParser outlives the Document it won't cause badness. |
556 ASSERT(!m_parser || m_parser->refCount() == 1); | 554 ASSERT(!m_parser || m_parser->refCount() == 1); |
557 detachParser(); | 555 detachParser(); |
(...skipping 5204 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5762 visitor->trace(m_docType); | 5760 visitor->trace(m_docType); |
5763 visitor->trace(m_implementation); | 5761 visitor->trace(m_implementation); |
5764 visitor->trace(m_autofocusElement); | 5762 visitor->trace(m_autofocusElement); |
5765 visitor->trace(m_focusedElement); | 5763 visitor->trace(m_focusedElement); |
5766 visitor->trace(m_hoverNode); | 5764 visitor->trace(m_hoverNode); |
5767 visitor->trace(m_activeHoverElement); | 5765 visitor->trace(m_activeHoverElement); |
5768 visitor->trace(m_documentElement); | 5766 visitor->trace(m_documentElement); |
5769 visitor->trace(m_titleElement); | 5767 visitor->trace(m_titleElement); |
5770 visitor->trace(m_markers); | 5768 visitor->trace(m_markers); |
5771 visitor->trace(m_currentScriptStack); | 5769 visitor->trace(m_currentScriptStack); |
| 5770 visitor->trace(m_scriptRunner); |
5772 visitor->trace(m_transformSourceDocument); | 5771 visitor->trace(m_transformSourceDocument); |
5773 visitor->trace(m_listsInvalidatedAtDocument); | 5772 visitor->trace(m_listsInvalidatedAtDocument); |
5774 #if ENABLE(OILPAN) | 5773 #if ENABLE(OILPAN) |
5775 for (int i = 0; i < numNodeListInvalidationTypes; ++i) | 5774 for (int i = 0; i < numNodeListInvalidationTypes; ++i) |
5776 visitor->trace(m_nodeLists[i]); | 5775 visitor->trace(m_nodeLists[i]); |
5777 #endif | 5776 #endif |
5778 visitor->trace(m_cssCanvasElements); | 5777 visitor->trace(m_cssCanvasElements); |
5779 visitor->trace(m_topLayerElements); | 5778 visitor->trace(m_topLayerElements); |
5780 visitor->trace(m_elemSheet); | 5779 visitor->trace(m_elemSheet); |
5781 visitor->trace(m_nodeIterators); | 5780 visitor->trace(m_nodeIterators); |
(...skipping 14 matching lines...) Expand all Loading... |
5796 visitor->trace(m_timeline); | 5795 visitor->trace(m_timeline); |
5797 visitor->trace(m_compositorPendingAnimations); | 5796 visitor->trace(m_compositorPendingAnimations); |
5798 visitor->registerWeakMembers<Document, &Document::clearWeakMembers>(this); | 5797 visitor->registerWeakMembers<Document, &Document::clearWeakMembers>(this); |
5799 DocumentSupplementable::trace(visitor); | 5798 DocumentSupplementable::trace(visitor); |
5800 TreeScope::trace(visitor); | 5799 TreeScope::trace(visitor); |
5801 ContainerNode::trace(visitor); | 5800 ContainerNode::trace(visitor); |
5802 ExecutionContext::trace(visitor); | 5801 ExecutionContext::trace(visitor); |
5803 } | 5802 } |
5804 | 5803 |
5805 } // namespace WebCore | 5804 } // namespace WebCore |
OLD | NEW |