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

Side by Side Diff: Source/core/rendering/RenderListItem.cpp

Issue 267053002: ASSERT on renderer lifecycle (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 years, 7 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 | 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 * Copyright (C) 2003, 2004, 2005, 2006, 2010 Apple Inc. All rights reserved. 4 * Copyright (C) 2003, 2004, 2005, 2006, 2010 Apple Inc. All rights reserved.
5 * Copyright (C) 2006 Andrew Wellington (proton@wiretapped.net) 5 * Copyright (C) 2006 Andrew Wellington (proton@wiretapped.net)
6 * 6 *
7 * This library is free software; you can redistribute it and/or 7 * This library is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU Library General Public 8 * modify it under the terms of the GNU Library General Public
9 * License as published by the Free Software Foundation; either 9 * License as published by the Free Software Foundation; either
10 * version 2 of the License, or (at your option) any later version. 10 * version 2 of the License, or (at your option) any later version.
(...skipping 278 matching lines...) Expand 10 before | Expand all | Expand 10 after
289 if (markerParent != lineBoxParent || m_marker->preferredLogicalWidthsDir ty()) { 289 if (markerParent != lineBoxParent || m_marker->preferredLogicalWidthsDir ty()) {
290 // Removing and adding the marker can trigger repainting in 290 // Removing and adding the marker can trigger repainting in
291 // containers other than ourselves, so we need to disable LayoutStat e. 291 // containers other than ourselves, so we need to disable LayoutStat e.
292 LayoutStateDisabler layoutStateDisabler(*this); 292 LayoutStateDisabler layoutStateDisabler(*this);
293 updateFirstLetter(); 293 updateFirstLetter();
294 m_marker->remove(); 294 m_marker->remove();
295 if (markerParent) 295 if (markerParent)
296 markerParent->dirtyLinesFromChangedChild(m_marker); 296 markerParent->dirtyLinesFromChangedChild(m_marker);
297 if (!lineBoxParent) 297 if (!lineBoxParent)
298 lineBoxParent = this; 298 lineBoxParent = this;
299 lineBoxParent->addChild(m_marker, firstNonMarkerChild(lineBoxParent) ); 299 {
300 DisableRenderObjectLifecycleAsserts disabler;
301 lineBoxParent->addChild(m_marker, firstNonMarkerChild(lineBoxPar ent));
302 }
300 m_marker->updateMarginsAndContent(); 303 m_marker->updateMarginsAndContent();
301 // If markerParent is an anonymous block that has lost all its child ren, destroy it. 304 // If markerParent is an anonymous block that has lost all its child ren, destroy it.
302 if (markerParent && markerParent->isAnonymousBlock() && !markerParen t->firstChild() && !toRenderBlock(markerParent)->continuation()) 305 if (markerParent && markerParent->isAnonymousBlock() && !markerParen t->firstChild() && !toRenderBlock(markerParent)->continuation())
303 markerParent->destroy(); 306 markerParent->destroy();
304 307
305 // If the marker is inside we need to redo the preferred width calcu lations 308 // If the marker is inside we need to redo the preferred width calcu lations
306 // as the size of the item now includes the size of the list marker. 309 // as the size of the item now includes the size of the list marker.
307 if (m_marker->isInside()) 310 if (m_marker->isInside())
308 containingBlock()->updateLogicalWidth(); 311 containingBlock()->updateLogicalWidth();
309 } 312 }
(...skipping 198 matching lines...) Expand 10 before | Expand all | Expand 10 after
508 // assume that all the following ones have too. 511 // assume that all the following ones have too.
509 // This gives us the opportunity to stop here and avoid 512 // This gives us the opportunity to stop here and avoid
510 // marking the same nodes again. 513 // marking the same nodes again.
511 break; 514 break;
512 } 515 }
513 item->updateValue(); 516 item->updateValue();
514 } 517 }
515 } 518 }
516 519
517 } // namespace WebCore 520 } // namespace WebCore
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698