Index: Source/core/layout/LayoutTableSection.cpp |
diff --git a/Source/core/layout/LayoutTableSection.cpp b/Source/core/layout/LayoutTableSection.cpp |
index 13715dbd10623afcc0edecbfdecc50b7cad9f90b..f8e4c0b3927abd5e0178c2ee1c8cbc06a382e505 100644 |
--- a/Source/core/layout/LayoutTableSection.cpp |
+++ b/Source/core/layout/LayoutTableSection.cpp |
@@ -1602,14 +1602,19 @@ void LayoutTableSection::removeCachedCollapsedBorders(const LayoutTableCell* cel |
m_cellsCollapsedBorders.remove(std::make_pair(cell, side)); |
} |
-void LayoutTableSection::setCachedCollapsedBorder(const LayoutTableCell* cell, CollapsedBorderSide side, const CollapsedBorderValue& border) |
+bool LayoutTableSection::setCachedCollapsedBorder(const LayoutTableCell* cell, CollapsedBorderSide side, const CollapsedBorderValue& border) |
{ |
ASSERT(table()->collapseBorders()); |
CellsCollapsedBordersMap::iterator it = m_cellsCollapsedBorders.find(std::make_pair(cell, side)); |
- if (it == m_cellsCollapsedBorders.end()) |
+ if (it == m_cellsCollapsedBorders.end()) { |
m_cellsCollapsedBorders.add(std::make_pair(cell, side), border); |
- else |
+ return true; |
+ } |
+ if (!it->value.equals(border)) { |
it->value = border; |
+ return true; |
+ } |
+ return false; |
} |
const CollapsedBorderValue& LayoutTableSection::cachedCollapsedBorder(const LayoutTableCell* cell, CollapsedBorderSide side) const |