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

Side by Side Diff: Source/WebCore/rendering/RenderBlock.cpp

Issue 11360203: Merge 133717 (Closed) Base URL: http://svn.webkit.org/repository/webkit/branches/chromium/1312/
Patch Set: Created 8 years, 1 month 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) 2007 David Smith (catfish.man@gmail.com) 4 * (C) 2007 David Smith (catfish.man@gmail.com)
5 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All rights reserved. 5 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All rights reserved.
6 * Copyright (C) Research In Motion Limited 2010. All rights reserved. 6 * Copyright (C) Research In Motion Limited 2010. All rights reserved.
7 * 7 *
8 * This library is free software; you can redistribute it and/or 8 * This library is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU Library General Public 9 * modify it under the terms of the GNU Library General Public
10 * License as published by the Free Software Foundation; either 10 * License as published by the Free Software Foundation; either
(...skipping 515 matching lines...) Expand 10 before | Expand all | Expand 10 after
526 { 526 {
527 RenderBlock* firstChildIgnoringAnonymousWrappers = 0; 527 RenderBlock* firstChildIgnoringAnonymousWrappers = 0;
528 for (RenderObject* curr = this; curr; curr = curr->parent()) { 528 for (RenderObject* curr = this; curr; curr = curr->parent()) {
529 if (!curr->isRenderBlock() || curr->isFloatingOrOutOfFlowPositioned() || curr->isTableCell() || curr->isRoot() || curr->isRenderView() || curr->hasOverf lowClip() 529 if (!curr->isRenderBlock() || curr->isFloatingOrOutOfFlowPositioned() || curr->isTableCell() || curr->isRoot() || curr->isRenderView() || curr->hasOverf lowClip()
530 || curr->isInlineBlockOrInlineTable()) 530 || curr->isInlineBlockOrInlineTable())
531 return 0; 531 return 0;
532 532
533 // FIXME: Table manages its own table parts, most of which are RenderBox es. 533 // FIXME: Table manages its own table parts, most of which are RenderBox es.
534 // Multi-column code cannot handle splitting the flow in table. Disablin g it 534 // Multi-column code cannot handle splitting the flow in table. Disablin g it
535 // to prevent crashes. 535 // to prevent crashes.
536 if (curr->isTable()) 536 // Similarly, RenderButton maintains an anonymous block child and overri des
537 // addChild() to prevent itself from having additional direct children. This
538 // causes problems for split flows.
539 if (curr->isTable() || curr->isRenderButton())
537 return 0; 540 return 0;
538 541
539 RenderBlock* currBlock = toRenderBlock(curr); 542 RenderBlock* currBlock = toRenderBlock(curr);
540 if (!currBlock->createsAnonymousWrapper()) 543 if (!currBlock->createsAnonymousWrapper())
541 firstChildIgnoringAnonymousWrappers = currBlock; 544 firstChildIgnoringAnonymousWrappers = currBlock;
542 545
543 if (currBlock->style()->specifiesColumns() && (allowAnonymousColumnBlock || !currBlock->isAnonymousColumnsBlock())) 546 if (currBlock->style()->specifiesColumns() && (allowAnonymousColumnBlock || !currBlock->isAnonymousColumnsBlock()))
544 return firstChildIgnoringAnonymousWrappers; 547 return firstChildIgnoringAnonymousWrappers;
545 548
546 if (currBlock->isAnonymousColumnSpanBlock()) 549 if (currBlock->isAnonymousColumnSpanBlock())
(...skipping 7158 matching lines...) Expand 10 before | Expand all | Expand 10 after
7705 } 7708 }
7706 7709
7707 String ValueToString<RenderBlock::FloatingObject*>::string(const RenderBlock::Fl oatingObject* floatingObject) 7710 String ValueToString<RenderBlock::FloatingObject*>::string(const RenderBlock::Fl oatingObject* floatingObject)
7708 { 7711 {
7709 return String::format("%p (%dx%d %dx%d)", floatingObject, floatingObject->fr ameRect().pixelSnappedX(), floatingObject->frameRect().pixelSnappedY(), floating Object->frameRect().pixelSnappedMaxX(), floatingObject->frameRect().pixelSnapped MaxY()); 7712 return String::format("%p (%dx%d %dx%d)", floatingObject, floatingObject->fr ameRect().pixelSnappedX(), floatingObject->frameRect().pixelSnappedY(), floating Object->frameRect().pixelSnappedMaxX(), floatingObject->frameRect().pixelSnapped MaxY());
7710 } 7713 }
7711 7714
7712 #endif 7715 #endif
7713 7716
7714 } // namespace WebCore 7717 } // namespace WebCore
OLDNEW
« no previous file with comments | « LayoutTests/fast/block/colspan-under-button-crash-expected.txt ('k') | Source/WebCore/rendering/RenderButton.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698