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

Side by Side Diff: Source/core/dom/NodeRenderingContext.cpp

Issue 16951003: Fix broken AttachContext from r152289 (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Fixed failing test (/fast/forms/file/input-file-re-render.html) Created 7 years, 6 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 unified diff | Download patch
OLDNEW
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 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All r ights reserved. 5 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All r ights reserved.
6 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.t orchmobile.com/) 6 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.t orchmobile.com/)
7 * Copyright (C) 2011 Google Inc. All rights reserved. 7 * Copyright (C) 2011 Google Inc. All rights reserved.
8 * 8 *
9 * This library is free software; you can redistribute it and/or 9 * This library is free software; you can redistribute it and/or
10 * modify it under the terms of the GNU Library General Public 10 * modify it under the terms of the GNU Library General Public
(...skipping 228 matching lines...) Expand 10 before | Expand all | Expand 10 after
239 } 239 }
240 240
241 void NodeRenderingContext::createRendererForElementIfNeeded() 241 void NodeRenderingContext::createRendererForElementIfNeeded()
242 { 242 {
243 ASSERT(!m_node->renderer()); 243 ASSERT(!m_node->renderer());
244 244
245 Element* element = toElement(m_node); 245 Element* element = toElement(m_node);
246 246
247 if (!shouldCreateRenderer()) 247 if (!shouldCreateRenderer())
248 return; 248 return;
249 m_style = element->styleForRenderer(); 249 if (!m_style)
250 m_style = element->styleForRenderer();
250 ASSERT(m_style); 251 ASSERT(m_style);
251 252
252 moveToFlowThreadIfNeeded(); 253 moveToFlowThreadIfNeeded();
253 254
254 if (!element->rendererIsNeeded(*this)) 255 if (!element->rendererIsNeeded(*this))
255 return; 256 return;
256 257
257 RenderObject* parentRenderer = this->parentRenderer(); 258 RenderObject* parentRenderer = this->parentRenderer();
258 RenderObject* nextRenderer = this->nextRenderer(); 259 RenderObject* nextRenderer = this->nextRenderer();
259 260
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after
317 newRenderer->setFlowThreadState(parentRenderer->flowThreadState()); 318 newRenderer->setFlowThreadState(parentRenderer->flowThreadState());
318 319
319 RenderObject* nextRenderer = this->nextRenderer(); 320 RenderObject* nextRenderer = this->nextRenderer();
320 textNode->setRenderer(newRenderer); 321 textNode->setRenderer(newRenderer);
321 // Parent takes care of the animations, no need to call setAnimatableStyle. 322 // Parent takes care of the animations, no need to call setAnimatableStyle.
322 newRenderer->setStyle(m_style.release()); 323 newRenderer->setStyle(m_style.release());
323 parentRenderer->addChild(newRenderer, nextRenderer); 324 parentRenderer->addChild(newRenderer, nextRenderer);
324 } 325 }
325 326
326 } 327 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698