Index: third_party/WebKit/Source/core/paint/TableSectionPainter.cpp |
diff --git a/third_party/WebKit/Source/core/paint/TableSectionPainter.cpp b/third_party/WebKit/Source/core/paint/TableSectionPainter.cpp |
index 4b8f0396fe5b60a997ff7d48d2b661167eb60193..f9e79459f53502203d0f4368d8917058b1c4eff7 100644 |
--- a/third_party/WebKit/Source/core/paint/TableSectionPainter.cpp |
+++ b/third_party/WebKit/Source/core/paint/TableSectionPainter.cpp |
@@ -191,9 +191,8 @@ void TableSectionPainter::paintCollapsedSectionBorders( |
unsigned row = r - 1; |
for (unsigned c = dirtiedColumns.end(); c > dirtiedColumns.start(); c--) { |
unsigned col = c - 1; |
- const LayoutTableSection::CellStruct& current = |
- m_layoutTableSection.cellAt(row, col); |
- const LayoutTableCell* cell = current.primaryCell(); |
+ const LayoutTableCell* cell = |
+ m_layoutTableSection.primaryCellAt(row, col); |
if (!cell || (row > dirtiedRows.start() && |
m_layoutTableSection.primaryCellAt(row - 1, col) == cell) || |
(col > dirtiedColumns.start() && |
@@ -304,6 +303,8 @@ void TableSectionPainter::paintObject(const PaintInfo& paintInfo, |
TableRowPainter(*row).paintOutline(paintInfoForDescendants, |
paintOffset); |
for (unsigned c = dirtiedColumns.start(); c < dirtiedColumns.end(); c++) { |
+ if (c >= m_layoutTableSection.numCols(r)) |
+ break; |
const LayoutTableSection::CellStruct& current = |
m_layoutTableSection.cellAt(r, c); |
for (LayoutTableCell* cell : current.cells) { |