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

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

Issue 791533004: Don't updateRenderTree in the middle of a DOM insertion. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Rebased Created 6 years 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 | Annotate | Revision Log
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 Peter Kelly (pmk@post.com) 4 * (C) 2001 Peter Kelly (pmk@post.com)
5 * (C) 2001 Dirk Mueller (mueller@kde.org) 5 * (C) 2001 Dirk Mueller (mueller@kde.org)
6 * (C) 2007 David Smith (catfish.man@gmail.com) 6 * (C) 2007 David Smith (catfish.man@gmail.com)
7 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2012, 2013 Apple Inc. All rights reserved. 7 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2012, 2013 Apple Inc. All rights reserved.
8 * (C) 2007 Eric Seidel (eric@webkit.org) 8 * (C) 2007 Eric Seidel (eric@webkit.org)
9 * 9 *
10 * This library is free software; you can redistribute it and/or 10 * This library is free software; you can redistribute it and/or
(...skipping 1551 matching lines...) Expand 10 before | Expand all | Expand 10 after
1562 PassRefPtr<RenderStyle> Element::originalStyleForRenderer() 1562 PassRefPtr<RenderStyle> Element::originalStyleForRenderer()
1563 { 1563 {
1564 ASSERT(document().inStyleRecalc()); 1564 ASSERT(document().inStyleRecalc());
1565 return document().ensureStyleResolver().styleForElement(this); 1565 return document().ensureStyleResolver().styleForElement(this);
1566 } 1566 }
1567 1567
1568 void Element::recalcStyle(StyleRecalcChange change, Text* nextTextSibling) 1568 void Element::recalcStyle(StyleRecalcChange change, Text* nextTextSibling)
1569 { 1569 {
1570 ASSERT(document().inStyleRecalc()); 1570 ASSERT(document().inStyleRecalc());
1571 ASSERT(!parentOrShadowHostNode()->needsStyleRecalc()); 1571 ASSERT(!parentOrShadowHostNode()->needsStyleRecalc());
1572 ASSERT(inActiveDocument());
1572 1573
1573 if (hasCustomStyleCallbacks()) 1574 if (hasCustomStyleCallbacks())
1574 willRecalcStyle(change); 1575 willRecalcStyle(change);
1575 1576
1576 if (change >= Inherit || needsStyleRecalc()) { 1577 if (change >= Inherit || needsStyleRecalc()) {
1577 if (hasRareData()) { 1578 if (hasRareData()) {
1578 ElementRareData* data = elementRareData(); 1579 ElementRareData* data = elementRareData();
1579 data->clearComputedStyle(); 1580 data->clearComputedStyle();
1580 1581
1581 if (change >= Inherit) { 1582 if (change >= Inherit) {
(...skipping 1822 matching lines...) Expand 10 before | Expand all | Expand 10 after
3404 return wrapper; 3405 return wrapper;
3405 3406
3406 CustomElementBinding* binding = perContextData->customElementBinding(customE lementDefinition()); 3407 CustomElementBinding* binding = perContextData->customElementBinding(customE lementDefinition());
3407 3408
3408 wrapper->SetPrototype(binding->prototype()); 3409 wrapper->SetPrototype(binding->prototype());
3409 3410
3410 return V8DOMWrapper::associateObjectWithWrapper(isolate, this, wrapperType, wrapper); 3411 return V8DOMWrapper::associateObjectWithWrapper(isolate, this, wrapperType, wrapper);
3411 } 3412 }
3412 3413
3413 } // namespace blink 3414 } // namespace blink
OLDNEW
« no previous file with comments | « LayoutTests/fast/html/insert-selected-option-crash-expected.html ('k') | Source/core/html/HTMLOptionElement.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698