ImageFrame* ImageDecoder::frameBufferAtIndex(size_t index) { if (index >= frameCount()) return 0; ImageFrame* frame = &m_frameBufferCache[index]; if (frame->status() != ImageFrame::FrameComplete) { PlatformInstrumentation::willDecodeImage(filenameExtension()); decode(index); PlatformInstrumentation::didDecodeImage(); } frame->notifyBitmapIfPixelsChanged(); return frame; }
ImageFrame* ImageDecoder::frameBufferAtIndex(size_t index) { if (index >= frameCount()) return 0; ImageFrame* frame = &m_frameBufferCache[index]; if (frame->getStatus() != ImageFrame::FrameComplete) { PlatformInstrumentation::willDecodeImage(filenameExtension()); decode(index); PlatformInstrumentation::didDecodeImage(); } if (!m_hasHistogrammedColorSpace) { BitmapImageMetrics::countImageGamma(m_embeddedColorSpace.get()); m_hasHistogrammedColorSpace = true; } frame->notifyBitmapIfPixelsChanged(); return frame; }