Index: Source/core/rendering/RenderObject.cpp |
diff --git a/Source/core/rendering/RenderObject.cpp b/Source/core/rendering/RenderObject.cpp |
index d6c298a73982a99d637007027bab4d7da285f2b1..aeca479f3b763ff231f279de71f300f25e7669e5 100644 |
--- a/Source/core/rendering/RenderObject.cpp |
+++ b/Source/core/rendering/RenderObject.cpp |
@@ -286,14 +286,12 @@ bool RenderObject::isLegend() const |
void RenderObject::setFlowThreadStateIncludingDescendants(FlowThreadState state) |
{ |
- setFlowThreadState(state); |
- |
- for (RenderObject* child = firstChild(); child; child = child->nextSibling()) { |
- // If the child is a fragmentation context it already updated the descendants flag accordingly. |
- if (child->isRenderFlowThread()) |
+ for (RenderObject *object = this; object; object = object->nextInPreOrder()) { |
dsinclair
2014/01/27 20:21:55
drive by comment: From someone new to the renderin
esprehn
2014/01/27 20:44:37
This is not correct, nextInPreOrder() will walk al
|
+ // If object is a fragmentation context it already updated the descendants flag accordingly. |
+ if (object->isRenderFlowThread()) |
continue; |
- ASSERT(state != child->flowThreadState()); |
- child->setFlowThreadStateIncludingDescendants(state); |
+ ASSERT(state != object->flowThreadState()); |
+ object->setFlowThreadState(state); |
} |
} |