Changeset 100051 in webkit
- Timestamp:
- Nov 11, 2011, 5:26:22 PM (15 years ago)
- Location:
- trunk
- Files:
-
- 8 added
- 4 edited
-
LayoutTests/ChangeLog (modified) (1 diff)
-
LayoutTests/fast/table/crash-table-cell-change-height-expected.txt (added)
-
LayoutTests/fast/table/crash-table-cell-change-height.html (added)
-
LayoutTests/fast/table/table-cell-change-height-with-needsCellRecalc-section-expected.txt (added)
-
LayoutTests/fast/table/table-cell-change-height-with-needsCellRecalc-section.html (added)
-
LayoutTests/fast/table/table-cell-change-last-row-with-needsCellRecalc-section-expected.txt (added)
-
LayoutTests/fast/table/table-cell-change-last-row-with-needsCellRecalc-section.html (added)
-
LayoutTests/fast/table/table-row-change-height-with-needsCellRecalc-section-expected.txt (added)
-
LayoutTests/fast/table/table-row-change-height-with-needsCellRecalc-section.html (added)
-
Source/WebCore/ChangeLog (modified) (1 diff)
-
Source/WebCore/rendering/RenderTableCell.cpp (modified) (1 diff)
-
Source/WebCore/rendering/RenderTableCell.h (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r100050 r100051 1 2011-11-11 Julien Chaffraix <jchaffraix@webkit.org> 2 3 Crash in styleDidChange when changing a table cell's height. 4 <http://webkit.org/b/72004> 5 6 Reviewed by Darin Adler. 7 8 * fast/table/crash-table-cell-change-height-expected.txt: Added. 9 * fast/table/crash-table-cell-change-height.html: Added. 10 11 * fast/table/table-cell-change-height-with-needsCellRecalc-section-expected.txt: Added. 12 * fast/table/table-cell-change-height-with-needsCellRecalc-section.html: Added. 13 * fast/table/table-cell-change-last-row-with-needsCellRecalc-section-expected.txt: Added. 14 * fast/table/table-cell-change-last-row-with-needsCellRecalc-section.html: Added. 15 * fast/table/table-row-change-height-with-needsCellRecalc-section-expected.txt: Added. 16 * fast/table/table-row-change-height-with-needsCellRecalc-section.html: Added. 17 Those tests checks that we don't try to access bad rows when the section needs a recalc. 18 1 19 2011-11-11 Shinya Kawanaka <shinyak@google.com> 2 20 -
trunk/Source/WebCore/ChangeLog
r100050 r100051 1 2011-11-11 Julien Chaffraix <jchaffraix@webkit.org> 2 3 Crash in styleDidChange when changing a table cell's height. 4 <http://webkit.org/b/72004> 5 6 Reviewed by Darin Adler. 7 8 Tests: fast/table/crash-table-cell-change-height.html 9 fast/table/table-cell-change-height-with-needsCellRecalc-section.html 10 fast/table/table-cell-change-last-row-with-needsCellRecalc-section.html 11 fast/table/table-row-change-height-with-needsCellRecalc-section.html 12 13 r99212 removed our call to recalcCells when the logical height changed. This 14 means that we could end up with a cells without having set its row() properly 15 which would crash. 16 17 The change exposes the was-the-row-properly-set information so that we don't 18 try to access a bogus index. This should work properly even if the section 19 needs a cell recalc as the current section's row structure would still be 20 accurate in this case. 21 22 * rendering/RenderTableCell.cpp: 23 (WebCore::RenderTableCell::styleDidChange): Check that our row index 24 was properly set before calling 25 26 * rendering/RenderTableCell.h: 27 (WebCore::RenderTableCell::rowWasSet): Helper function to detect 28 if we have set up our a row. 29 (WebCore::RenderTableCell::row): Use the previous function in the 30 ASSERT. 31 1 32 2011-11-11 Shinya Kawanaka <shinyak@google.com> 2 33 -
trunk/Source/WebCore/rendering/RenderTableCell.cpp
r99254 r100051 318 318 setHasBoxDecorations(true); 319 319 320 if (parent() && section() && oldStyle && style()->height() != oldStyle->height() )320 if (parent() && section() && oldStyle && style()->height() != oldStyle->height() && rowWasSet()) 321 321 section()->rowLogicalHeightChanged(row()); 322 322 -
trunk/Source/WebCore/rendering/RenderTableCell.h
r99254 r100051 72 72 } 73 73 74 bool rowWasSet() const { return m_row != unsetRowIndex; } 74 75 unsigned row() const 75 76 { 76 ASSERT( m_row != unsetRowIndex);77 ASSERT(rowWasSet()); 77 78 return m_row; 78 79 }
Note:
See TracChangeset
for help on using the changeset viewer.