Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(840)

Unified Diff: Source/core/dom/Element.cpp

Issue 22043003: [oilpan] Handlify childrenChanged. (Closed) Base URL: svn://svn.chromium.org/blink/branches/oilpan
Patch Set: Created 7 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: Source/core/dom/Element.cpp
diff --git a/Source/core/dom/Element.cpp b/Source/core/dom/Element.cpp
index 0c8859d448ddd79e756dbac8f555ec6404f95e9e..54f4adc480152b9a5e84413ed2a1aaeaf5510b8f 100644
--- a/Source/core/dom/Element.cpp
+++ b/Source/core/dom/Element.cpp
@@ -1569,7 +1569,7 @@ static void checkForEmptyStyleChange(Element* element, RenderStyle* style)
}
static void checkForSiblingStyleChanges(Element* e, RenderStyle* style, bool finishedParsingCallback,
- Node* beforeChange, Node* afterChange, int childCountDelta)
+ const Handle<Node>& beforeChange, const Handle<Node>& afterChange, int childCountDelta)
{
// :empty selector.
checkForEmptyStyleChange(e, style);
@@ -1587,7 +1587,7 @@ static void checkForSiblingStyleChanges(Element* e, RenderStyle* style, bool fin
// Find the first element node following |afterChange|
Node* firstElementAfterInsertion = 0;
- for (firstElementAfterInsertion = afterChange;
+ for (firstElementAfterInsertion = afterChange.raw();
firstElementAfterInsertion && !firstElementAfterInsertion->isElementNode();
firstElementAfterInsertion = firstElementAfterInsertion->nextSibling()) {};
@@ -1610,7 +1610,7 @@ static void checkForSiblingStyleChanges(Element* e, RenderStyle* style, bool fin
// Find the last element node going backwards from |beforeChange|
Node* lastElementBeforeInsertion = 0;
- for (lastElementBeforeInsertion = beforeChange;
+ for (lastElementBeforeInsertion = beforeChange.raw();
lastElementBeforeInsertion && !lastElementBeforeInsertion->isElementNode();
lastElementBeforeInsertion = lastElementBeforeInsertion->previousSibling()) {};
@@ -1628,7 +1628,7 @@ static void checkForSiblingStyleChanges(Element* e, RenderStyle* style, bool fin
// that could be affected by this DOM change.
if (e->childrenAffectedByDirectAdjacentRules() && afterChange) {
Node* firstElementAfterInsertion = 0;
- for (firstElementAfterInsertion = afterChange;
+ for (firstElementAfterInsertion = afterChange.raw();
firstElementAfterInsertion && !firstElementAfterInsertion->isElementNode();
firstElementAfterInsertion = firstElementAfterInsertion->nextSibling()) {};
if (firstElementAfterInsertion && firstElementAfterInsertion->attached())
@@ -1647,7 +1647,7 @@ static void checkForSiblingStyleChanges(Element* e, RenderStyle* style, bool fin
e->setNeedsStyleRecalc();
}
-void Element::childrenChanged(bool changedByParser, Node* beforeChange, Node* afterChange, int childCountDelta)
+void Element::childrenChanged(bool changedByParser, const Handle<Node>& beforeChange, const Handle<Node>& afterChange, int childCountDelta)
{
ContainerNode::childrenChanged(changedByParser, beforeChange, afterChange, childCountDelta);
if (changedByParser)
@@ -1678,7 +1678,7 @@ void Element::finishParsingChildren()
{
ContainerNode::finishParsingChildren();
setIsParsingChildrenFinished();
- checkForSiblingStyleChanges(this, renderStyle(), true, lastChild(), 0, 0);
+ checkForSiblingStyleChanges(this, renderStyle(), true, adoptRawResult(lastChild()), nullptr, 0);
if (StyleResolver* styleResolver = document()->styleResolverIfExists())
styleResolver->popParentElement(this);
}

Powered by Google App Engine
This is Rietveld 408576698