New issue
Advanced search Search tips

Issue 740108 link

Starred by 2 users

Issue metadata

Status: Assigned
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug



Sign in to add a comment

DCHECK fails in ImageDecoder.cpp

Project Member Reported by dtapu...@chromium.org, Jul 7 2017

Issue description

Doing some analysis from http archive for a feature I'm working on and this site doesn't load.

Thought it would be useful to examine:

Load http://webdelmaestrocmf.com/portal/

[1:1:0707/101303.585177:FATAL:ImageDecoder.cpp(494)] Check failed: !has_histogrammed_color_space_. 
#0 0x7f4eddf456c7 base::debug::StackTrace::StackTrace()
#1 0x7f4eddf6c9f1 logging::LogMessage::~LogMessage()
#2 0x7f4ed5bc18a9 blink::ImageDecoder::SetEmbeddedColorSpace()
#3 0x7f4ed5bc170c blink::ImageDecoder::SetEmbeddedColorProfile()
#4 0x7f4ed5bcf459 blink::JPEGImageReader::Decode()
#5 0x7f4ed5bce00e blink::JPEGImageDecoder::Decode()
#6 0x7f4ed5b1a14b blink::DeferredImageDecoder::PrepareLazyDecodedFrames()
#7 0x7f4ed5b19a4d blink::DeferredImageDecoder::SetDataInternal()
#8 0x7f4ed5b1aa56 blink::DeferredImageDecoder::SetData()
#9 0x7f4ed5b4016a blink::ImageSource::SetData()
#10 0x7f4ed5b06f7e blink::BitmapImage::SetData()

 
Build is ToT July 6, 2017..

commit 2cd5186ee730c77dcf5e8699d67d8796ac7e7aa6 (origin/master, origin/HEAD)
Author: Stephen McGruer <smcgruer@chromium.org>
Date:   Thu Jul 6 19:25:16 2017 +0000

Another site: http://www.etisalat.lk/
Cc: ccameron@chromium.org
Components: -Blink>Image
Owner: ccameron@chromium.org
Status: Assigned (was: Untriaged)
Oh, I debugged this a month ago cause I thought it was part of a different bug.

There is a path by which we can hit this assert inappropriately ... but I forget what it was.
Actually, DCHECK(!has_histogrammed_color_space_) just doesn't consider partial decoding when same JPEGImageDecoder is called more than one time. E.g. creating ImageDecoder with half of /LayoutTests/images/resources/cmyk-jpeg.jpg data and then calling ImageDecoder::SetData() with full data will cause this DCHECK.

Sign in to add a comment