Changeset 81812 in webkit
- Timestamp:
- Mar 23, 2011 3:04:02 PM (13 years ago)
- Location:
- trunk
- Files:
-
- 2 added
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r81808 r81812 1 2011-03-23 Luiz Agostini <luiz.agostini@openbossa.org> 2 3 Reviewed by David Hyatt. 4 5 REGRESSION(81035): crash in RenderDetails::removeChild 6 https://bugs.webkit.org/show_bug.cgi?id=56773 7 8 * fast/html/details-children-merge-crash-expected.txt: Added. 9 * fast/html/details-children-merge-crash.html: Added. 10 1 11 2011-03-23 Xiaomei Ji <xji@chromium.org> 2 12 -
trunk/Source/WebCore/ChangeLog
r81807 r81812 1 2011-03-23 Luiz Agostini <luiz.agostini@openbossa.org> 2 3 Reviewed by David Hyatt. 4 5 REGRESSION(81035): crash in RenderDetails::removeChild 6 https://bugs.webkit.org/show_bug.cgi?id=56773 7 8 Test: fast/html/details-children-merge-crash.html 9 10 Preventing merging of RenderDetails's anonymous children. 11 12 * rendering/RenderBlock.cpp: 13 (WebCore::canMergeContiguousAnonymousBlocks): 14 15 Fixing RenderDetails::removeChild and cleaning m_marker in RenderDetails::destroy. 16 17 * rendering/RenderDetails.cpp: 18 (WebCore::RenderDetails::destroy): 19 (WebCore::RenderDetails::removeChild): 20 1 21 2011-03-23 Xiaomei Ji <xji@chromium.org> 2 22 -
trunk/Source/WebCore/rendering/RenderBlock.cpp
r81807 r81812 932 932 { 933 933 if (oldChild->documentBeingDestroyed() || oldChild->isInline() || oldChild->virtualContinuation()) 934 return false; 935 936 if (oldChild->parent() && oldChild->parent()->isDetails()) 934 937 return false; 935 938 -
trunk/Source/WebCore/rendering/RenderDetails.cpp
r81035 r81812 47 47 void RenderDetails::destroy() 48 48 { 49 if (m_marker) 49 if (m_marker) { 50 50 m_marker->destroy(); 51 m_marker = 0; 52 } 51 53 52 54 RenderBlock::destroy(); … … 80 82 void RenderDetails::removeChild(RenderObject* oldChild) 81 83 { 82 if (oldChild == m_summaryBlock || oldChild == m_contentBlock) {84 if (oldChild == m_summaryBlock) { 83 85 RenderBlock::removeChild(oldChild); 84 86 m_summaryBlock = 0; … … 86 88 } 87 89 88 if (oldChild == m_mainSummary) { 90 if (oldChild == m_contentBlock) { 91 RenderBlock::removeChild(oldChild); 92 m_contentBlock = 0; 93 return; 94 } 95 96 if (oldChild == m_mainSummary && m_summaryBlock) { 89 97 m_summaryBlock->removeChild(m_mainSummary); 90 98 return;
Note: See TracChangeset
for help on using the changeset viewer.