| Index: Source/core/dom/RenderTreeBuilder.h
 | 
| diff --git a/Source/core/dom/RenderTreeBuilder.h b/Source/core/dom/RenderTreeBuilder.h
 | 
| index dc7a379bd0ffce1d56ec1b5c95f5b3dd4824ea87..30d639c4d921dfedc25c9f910104ecda34f7adc8 100644
 | 
| --- a/Source/core/dom/RenderTreeBuilder.h
 | 
| +++ b/Source/core/dom/RenderTreeBuilder.h
 | 
| @@ -27,21 +27,36 @@
 | 
|  #define RenderTreeBuilder_h
 | 
|  
 | 
|  #include "core/dom/Document.h"
 | 
| -#include "core/dom/FirstLetterPseudoElement.h"
 | 
|  #include "core/dom/Node.h"
 | 
|  #include "core/dom/NodeRenderingTraversal.h"
 | 
| -#include "core/rendering/RenderObject.h"
 | 
|  #include "wtf/RefPtr.h"
 | 
|  
 | 
|  namespace blink {
 | 
|  
 | 
|  class ContainerNode;
 | 
| +class RenderObject;
 | 
|  class RenderStyle;
 | 
|  
 | 
|  class RenderTreeBuilder {
 | 
|      STACK_ALLOCATED();
 | 
|  public:
 | 
| -    RenderTreeBuilder(Node*, RenderStyle*);
 | 
| +    RenderTreeBuilder(Node* node, RenderStyle* style)
 | 
| +        : m_node(node)
 | 
| +        , m_renderingParent(nullptr)
 | 
| +        , m_style(style)
 | 
| +    {
 | 
| +        ASSERT(!node->renderer());
 | 
| +        ASSERT(node->needsAttach());
 | 
| +        ASSERT(node->document().inStyleRecalc());
 | 
| +
 | 
| +        // FIXME: We should be able to ASSERT(node->inActiveDocument()) but childrenChanged is called
 | 
| +        // before ChildNodeInsertionNotifier in ContainerNode's methods and some implementations
 | 
| +        // will trigger a layout inside childrenChanged.
 | 
| +        // Mainly HTMLTextAreaElement::childrenChanged calls HTMLTextFormControlElement::setSelectionRange
 | 
| +        // which does an updateLayoutIgnorePendingStylesheets.
 | 
| +
 | 
| +        m_renderingParent = NodeRenderingTraversal::parent(node, &m_parentDetails);
 | 
| +    }
 | 
|  
 | 
|      void createRendererForTextIfNeeded();
 | 
|      void createRendererForElementIfNeeded();
 | 
| @@ -53,7 +68,7 @@ private:
 | 
|      RenderStyle& style() const;
 | 
|  
 | 
|      RawPtrWillBeMember<Node> m_node;
 | 
| -    RawPtrWillBeMember<RenderObject> m_renderingParent;
 | 
| +    RawPtrWillBeMember<ContainerNode> m_renderingParent;
 | 
|      NodeRenderingTraversal::ParentDetails m_parentDetails;
 | 
|      mutable RefPtr<RenderStyle> m_style;
 | 
|  };
 | 
| 
 |