New issue
Advanced search Search tips

Issue 602961 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner:
Closed: Apr 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Mac
Pri: 1
Type: Bug



Sign in to add a comment

m_collapsedBordersValid ASSERT failure when printing Wikipedia

Project Member Reported by thestig@chromium.org, Apr 13 2016

Issue description

Linux, bisected to r386304

Steps to reproduced:
1) Do a debug build on Linux (or Mac)
2) Run Chromium
3) Visit https://en.wikipedia.org/wiki/Main_Page
4) Press ctrl + shift + p to bring up the native print dialog (Not sure what the proper Mac shortcut, it's windows key + alt with a PC keyboard)
5) Print to PDF

ASSERTION FAILED: m_collapsedBordersValid
../../third_party/WebKit/Source/core/layout/LayoutTable.h(387) : const CollapsedBorderValues &blink::LayoutTable::collapsedBorders() const

Received signal 11 SEGV_MAPERR 0000fbadbeef
#0 0x7f15c46584ee base::debug::StackTrace::StackTrace()
#1 0x7f15c465802f base::debug::(anonymous namespace)::StackDumpSignalHandler()
#2 0x7f15b58cb340 <unknown>
#3 0x7f15ae0f1384 blink::LayoutTable::collapsedBorders()
#4 0x7f15ae0f0f9a blink::TablePainter::paintObject()
#5 0x7f15ad8e5105 blink::LayoutTable::paintObject()
#6 0x7f15ae071066 blink::BlockPainter::paint()
#7 0x7f15ad7c5d55 blink::LayoutBlock::paint()
#8 0x7f15ae07159a blink::BlockPainter::paintChild()
#9 0x7f15ae0714eb blink::BlockPainter::paintChildren()
#10 0x7f15ad7c5d95 blink::LayoutBlock::paintChildren()
#11 0x7f15ae072076 blink::BlockPainter::paintContents()
#12 0x7f15ae071d7e blink::BlockPainter::paintObject()
#13 0x7f15ad7c5dd5 blink::LayoutBlock::paintObject()
#14 0x7f15ae071066 blink::BlockPainter::paint()
#15 0x7f15ad7c5d55 blink::LayoutBlock::paint()
#16 0x7f15ae07159a blink::BlockPainter::paintChild()
#17 0x7f15ae0714eb blink::BlockPainter::paintChildren()
#18 0x7f15ad7c5d95 blink::LayoutBlock::paintChildren()
#19 0x7f15ae072076 blink::BlockPainter::paintContents()
#20 0x7f15ae071d7e blink::BlockPainter::paintObject()
#21 0x7f15ad7c5dd5 blink::LayoutBlock::paintObject()
#22 0x7f15ae071066 blink::BlockPainter::paint()
#23 0x7f15ae0ef45b blink::TableCellPainter::paint()
#24 0x7f15ad8f1c55 blink::LayoutTableCell::paint()
#25 0x7f15ae0f27b3 blink::TableSectionPainter::paintCell()
#26 0x7f15ae0f1c1a blink::TableSectionPainter::paintObject()
...

And then the renderer crashing causes a DCHECK in the printing code and the browser crashes too. Doh.

 
Owner: wangxianzhu@chromium.org
Status: Assigned (was: Untriaged)
Looks like missing paint invalidation for the LayoutTable. 
Project Member

Comment 2 by bugdroid1@chromium.org, Apr 14 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/f07d9b4a2ebb30cb77d3cca7d59e1f3c674e81eb

commit f07d9b4a2ebb30cb77d3cca7d59e1f3c674e81eb
Author: wangxianzhu <wangxianzhu@chromium.org>
Date: Thu Apr 14 00:50:00 2016

Partly revert https://codereview.chromium.org/1860273003/ where paint follows

Restored updateLifecycleToCompositingCleanPlusScrolling() to
updateAllLifecyclePhases() where paint follows, because some paint
code may depend on the result of lifecycle phases between
CompositingUpdateClean and InPaint. For example, we update
table collapsed borders and layer empty phase information during
paint invalidtion, which are needed by paint.

BUG= 602961 , 591468 , 603230 

Review URL: https://codereview.chromium.org/1890603002

Cr-Commit-Position: refs/heads/master@{#387178}

[modify] https://crrev.com/f07d9b4a2ebb30cb77d3cca7d59e1f3c674e81eb/third_party/WebKit/Source/core/frame/LocalFrame.cpp
[modify] https://crrev.com/f07d9b4a2ebb30cb77d3cca7d59e1f3c674e81eb/third_party/WebKit/Source/core/svg/graphics/SVGImage.cpp
[modify] https://crrev.com/f07d9b4a2ebb30cb77d3cca7d59e1f3c674e81eb/third_party/WebKit/Source/web/WebLocalFrameImpl.cpp

Status: Fixed (was: Assigned)
Labels: -M-51
This bug occurred (r386304) after m51 branch point (r386251).

Sign in to add a comment