New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 717058 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: May 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: All
Pri: 2
Type: Bug

Blocking:
issue 632867



Sign in to add a comment

DCHECK in GraphicsContext::BeginRecording when using --blink-settings=fetchImagePlaceholders

Project Member Reported by ryansturm@chromium.org, May 1 2017

Issue description

When running a debug build using --blink-settings=fetchImagePlaceholders, I consistently hit a DCHECK.


Full stack trace:

Received signal 6
#0 0x7fe7bf9df30b base::debug::StackTrace::StackTrace()
#1 0x7fe7bf9de00c base::debug::StackTrace::StackTrace()
#2 0x7fe7bf9dee1f base::debug::(anonymous namespace)::StackDumpSignalHandler()
#3 0x7fe7c006b330 <unknown>
#4 0x7fe7a884dc37 gsignal
#5 0x7fe7a8851028 abort
#6 0x7fe7bf9dc006 base::debug::(anonymous namespace)::DebugBreak()
#7 0x7fe7bf9dbfe8 base::debug::BreakDebugger()
#8 0x7fe7bfa519a4 logging::LogMessage::~LogMessage()
#9 0x7fe7ac83a106 blink::GraphicsContext::BeginRecording()
#10 0x7fe7aca53cd1 blink::PaintRecordBuilder::EndRecording()
#11 0x7fe7ac89a8ef blink::PlaceholderImage::ImageForCurrentFrame()
#12 0x7fe7ac85a9d8 blink::Image::DrawPattern()
#13 0x7fe7ac859ae7 blink::Image::DrawTiledBackground()
#14 0x7fe7ac83d4c5 blink::GraphicsContext::DrawTiledImage()
#15 0x7fe7af06f712 blink::BoxPainter::PaintFillLayer()
#16 0x7fe7af06e2e5 blink::BoxPainter::PaintFillLayers()
#17 0x7fe7af06de8c blink::BoxPainter::PaintBackground()
#18 0x7fe7af06d4a2 blink::BoxPainter::PaintBoxDecorationBackgroundWithRect()
#19 0x7fe7af06d093 blink::BoxPainter::PaintBoxDecorationBackground()
#20 0x7fe7aece5935 blink::LayoutBox::PaintBoxDecorationBackground()
#21 0x7fe7af058fd2 blink::BlockPainter::PaintObject()
#22 0x7fe7aec96155 blink::LayoutBlock::PaintObject()
#23 0x7fe7af05859d blink::BlockPainter::Paint()
#24 0x7fe7aec960d5 blink::LayoutBlock::Paint()
#25 0x7fe7af0ce6cd blink::PaintLayerPainter::PaintFragmentWithPhase()
#26 0x7fe7af0ccbab blink::PaintLayerPainter::PaintBackgroundForFragments()
#27 0x7fe7af0cbf84 blink::PaintLayerPainter::PaintLayerContents()
#28 0x7fe7af0ca9af blink::PaintLayerPainter::PaintLayerContentsCompositingAllPhases()
#29 0x7fe7af0c9e0e blink::PaintLayerPainter::Paint()
#30 0x7fe7af0cce1e blink::PaintLayerPainter::PaintChildren()
#31 0x7fe7af0cc0a7 blink::PaintLayerPainter::PaintLayerContents()
#32 0x7fe7af0ca9af blink::PaintLayerPainter::PaintLayerContentsCompositingAllPhases()
#33 0x7fe7af0c9e0e blink::PaintLayerPainter::Paint()
#34 0x7fe7af0cce1e blink::PaintLayerPainter::PaintChildren()
#35 0x7fe7af0cc0a7 blink::PaintLayerPainter::PaintLayerContents()
#36 0x7fe7aee3f30c blink::CompositedLayerMapping::DoPaintTask()
#37 0x7fe7aee4077f blink::CompositedLayerMapping::PaintContents()
#38 0x7fe7ac8441d1 blink::GraphicsLayer::PaintWithoutCommit()
#39 0x7fe7ac843d8f blink::GraphicsLayer::Paint()
#40 0x7fe7ae743120 blink::FrameView::PaintGraphicsLayerRecursively()
#41 0x7fe7ae743214 blink::FrameView::PaintGraphicsLayerRecursively()
#42 0x7fe7ae743214 blink::FrameView::PaintGraphicsLayerRecursively()
#43 0x7fe7ae743214 blink::FrameView::PaintGraphicsLayerRecursively()
#44 0x7fe7ae743214 blink::FrameView::PaintGraphicsLayerRecursively()
#45 0x7fe7ae7422ee blink::FrameView::PaintTree()
#46 0x7fe7ae7407d0 blink::FrameView::UpdateLifecyclePhasesInternal()
#47 0x7fe7ae73fe92 blink::FrameView::UpdateAllLifecyclePhases()
#48 0x7fe7af01a12b blink::PageAnimator::UpdateAllLifecyclePhases()
#49 0x7fe7ac0db805 blink::PageWidgetDelegate::UpdateAllLifecyclePhases()
#50 0x7fe7ac1d0e74 blink::WebViewImpl::UpdateAllLifecyclePhases()
#51 0x7fe7ac1c76d1 blink::WebViewFrameWidget::UpdateAllLifecyclePhases()
#52 0x7fe7ba3839fb content::RenderWidget::UpdateVisualState()
#53 0x7fe7ba1afb6a content::RenderWidgetCompositor::UpdateLayerTreeHost()
#54 0x7fe7b5cf4b9d cc::LayerTreeHost::RequestMainFrameUpdate()
#55 0x7fe7b5dc973c cc::ProxyMain::BeginMainFrame()
#56 0x7fe7b5dc6f2c _ZN4base8internal13FunctorTraitsIMN2cc9ProxyMainEFvSt10unique_ptrINS2_28BeginMainFrameAndCommitStateESt14default_deleteIS5_EEEvE6InvokeINS_7WeakPtrIS3_EEJS8_EEEvSA_OT_DpOT0_
#57 0x7fe7b5dc6dcf _ZN4base8internal12InvokeHelperILb1EvE8MakeItSoIMN2cc9ProxyMainEFvSt10unique_ptrINS4_28BeginMainFrameAndCommitStateESt14default_deleteIS7_EEENS_7WeakPtrIS5_EEJSA_EEEvOT_OT0_DpOT1_
#58 0x7fe7b5dc6d38 _ZN4base8internal7InvokerINS0_9BindStateIMN2cc9ProxyMainEFvSt10unique_ptrINS3_28BeginMainFrameAndCommitStateESt14default_deleteIS6_EEEJNS_7WeakPtrIS4_EENS0_13PassedWrapperIS9_EEEEEFvvEE7RunImplISB_St5tupleIJSD_SF_EEJLm0ELm1EEEEvOT_OT0_NS_13IndexSequenceIJXspT1_EEEE
#59 0x7fe7b5dc6c4e _ZN4base8internal7InvokerINS0_9BindStateIMN2cc9ProxyMainEFvSt10unique_ptrINS3_28BeginMainFrameAndCommitStateESt14default_deleteIS6_EEEJNS_7WeakPtrIS4_EENS0_13PassedWrapperIS9_EEEEEFvvEE7RunOnceEPNS0_13BindStateBaseE
#60 0x7fe7bf99ab0e _ZNO4base8CallbackIFvvELNS_8internal8CopyModeE0ELNS2_10RepeatModeE0EE3RunEv
#61 0x7fe7bf9e4f6e base::debug::TaskAnnotator::RunTask()
  r8: fffffffffffffed8  r9: fffffffffffffec8 r10: 0000000000000008 r11: 0000000000000202
 r12: 00007fe7c0d36d5b r13: 00007ffc64ffe640 r14: 0000000000000000 r15: 0000000000000000
  di: 0000000000000001  si: 0000000000000001  bp: 00007ffc64ff2480  bx: 00000000000000ff
  dx: 0000000000000006  ax: 0000000000000000  cx: ffffffffffffffff  sp: 00007ffc64ff2348
  ip: 00007fe7a884dc37 efl: 0000000000000202 cgf: 0000000000000033 erf: 0000000000000000
 trp: 0000000000000000 msk: 0000000000000000 cr2: 0000000000000000
[end of stack trace]



https://cs.chromium.org/chromium/src/third_party/WebKit/Source/platform/graphics/GraphicsContext.cpp?type=cs&q=GraphicsContext.cpp&l=269


 

Comment 1 by bengr@chromium.org, May 1 2017

sclittle: please fix asap as it is blocking development work.

Comment 2 by kbr@chromium.org, May 1 2017

Components: Blink>Paint

Comment 3 by kbr@chromium.org, May 1 2017

Cc: kbr@chromium.org

Comment 4 by kochi@chromium.org, May 2 2017

Components: -Blink
Project Member

Comment 5 by bugdroid1@chromium.org, May 2 2017

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

commit 5d206a778cd0c9fbc5b14447e13bf825a20f9152
Author: sclittle <sclittle@chromium.org>
Date: Tue May 02 03:06:58 2017

Use PaintRecorder instead of PaintRecordBuilder in PlaceholderImage.

Previously, PlaceholderImage was using PaintRecordBuilder incorrectly to
construct an SkImage of its appearance, which triggered a DCHECK in
debug builds.

This CL changes PlaceholderImage to use a PaintRecorder to construct the
SkImage instead.

BUG= 717058 

Review-Url: https://codereview.chromium.org/2849303002
Cr-Commit-Position: refs/heads/master@{#468542}

[modify] https://crrev.com/5d206a778cd0c9fbc5b14447e13bf825a20f9152/third_party/WebKit/Source/platform/graphics/PlaceholderImage.cpp

Status: Fixed (was: Assigned)

Comment 7 by efoo@chromium.org, Dec 5 2017

Components: Blink>Previews

Comment 8 by efoo@chromium.org, Dec 5 2017

Components: -UI>Browser>Previews

Sign in to add a comment