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

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

Issue 192603003: ASSERTION FAILED: type() == Percent in WebCore::Length::percent (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@extractedstyle
Patch Set: Test update Created 6 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
« no previous file with comments | « Source/core/rendering/AutoTableLayout.cpp ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2002 Lars Knoll (knoll@kde.org) 2 * Copyright (C) 2002 Lars Knoll (knoll@kde.org)
3 * (C) 2002 Dirk Mueller (mueller@kde.org) 3 * (C) 2002 Dirk Mueller (mueller@kde.org)
4 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2013 Apple Inc. 4 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2013 Apple Inc.
5 * 5 *
6 * This library is free software; you can redistribute it and/or 6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Library General Public 7 * modify it under the terms of the GNU Library General Public
8 * License as published by the Free Software Foundation; either 8 * License as published by the Free Software Foundation; either
9 * version 2 of the License. 9 * version 2 of the License.
10 * 10 *
(...skipping 120 matching lines...) Expand 10 before | Expand all | Expand 10 after
131 // Iterate over the first row in case some are unspecified. 131 // Iterate over the first row in case some are unspecified.
132 RenderTableSection* section = m_table->topNonEmptySection(); 132 RenderTableSection* section = m_table->topNonEmptySection();
133 if (!section) 133 if (!section)
134 return usedWidth; 134 return usedWidth;
135 135
136 unsigned currentColumn = 0; 136 unsigned currentColumn = 0;
137 137
138 RenderTableRow* firstRow = section->firstRow(); 138 RenderTableRow* firstRow = section->firstRow();
139 for (RenderTableCell* cell = firstRow->firstCell(); cell; cell = cell->nextC ell()) { 139 for (RenderTableCell* cell = firstRow->firstCell(); cell; cell = cell->nextC ell()) {
140 Length logicalWidth = cell->styleOrColLogicalWidth(); 140 Length logicalWidth = cell->styleOrColLogicalWidth();
141
142 // FIXME: calc() on tables should be handled consistently with other len gths. See bug: https://crbug.com/382725
143 if (logicalWidth.isCalculated())
144 logicalWidth = Length(); // Make it Auto
145
141 unsigned span = cell->colSpan(); 146 unsigned span = cell->colSpan();
142 int fixedBorderBoxLogicalWidth = 0; 147 int fixedBorderBoxLogicalWidth = 0;
143 // FIXME: Support other length types. If the width is non-auto, it shoul d probably just use 148 // FIXME: Support other length types. If the width is non-auto, it shoul d probably just use
144 // RenderBox::computeLogicalWidthUsing to compute the width. 149 // RenderBox::computeLogicalWidthUsing to compute the width.
145 if (logicalWidth.isFixed() && logicalWidth.isPositive()) { 150 if (logicalWidth.isFixed() && logicalWidth.isPositive()) {
146 fixedBorderBoxLogicalWidth = cell->adjustBorderBoxLogicalWidthForBox Sizing(logicalWidth.value()); 151 fixedBorderBoxLogicalWidth = cell->adjustBorderBoxLogicalWidthForBox Sizing(logicalWidth.value());
147 logicalWidth.setValue(fixedBorderBoxLogicalWidth); 152 logicalWidth.setValue(fixedBorderBoxLogicalWidth);
148 } 153 }
149 154
150 unsigned usedSpan = 0; 155 unsigned usedSpan = 0;
(...skipping 172 matching lines...) Expand 10 before | Expand all | Expand 10 after
323 RenderTableRow* row = section->rowRendererAt(i); 328 RenderTableRow* row = section->rowRendererAt(i);
324 if (!row) 329 if (!row)
325 continue; 330 continue;
326 for (RenderTableCell* cell = row->firstCell(); cell; cell = cell->ne xtCell()) 331 for (RenderTableCell* cell = row->firstCell(); cell; cell = cell->ne xtCell())
327 cell->setPreferredLogicalWidthsDirty(); 332 cell->setPreferredLogicalWidthsDirty();
328 } 333 }
329 } 334 }
330 } 335 }
331 336
332 } // namespace WebCore 337 } // namespace WebCore
OLDNEW
« no previous file with comments | « Source/core/rendering/AutoTableLayout.cpp ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698