From 1602344571ce77e2b2f21376a2294907e24671bf Mon Sep 17 00:00:00 2001 From: Ryan Harrison Date: Wed, 17 Jan 2018 21:44:06 +0000 Subject: Move format specific elements out of DetectImageType Refactoring the big image format switch in DetectImageType to call separate methods for each image format, instead of having one giant switch block. This should have no functional changes. BUG=pdfium:976 Change-Id: I52cc83879da20b33d471420016f6b1eb53993f0b Reviewed-on: https://pdfium-review.googlesource.com/23130 Commit-Queue: Ryan Harrison Reviewed-by: dsinclair --- core/fxcodec/codec/ccodec_progressivedecoder.h | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) (limited to 'core/fxcodec/codec/ccodec_progressivedecoder.h') diff --git a/core/fxcodec/codec/ccodec_progressivedecoder.h b/core/fxcodec/codec/ccodec_progressivedecoder.h index 7c780ff027..83ccce2f6c 100644 --- a/core/fxcodec/codec/ccodec_progressivedecoder.h +++ b/core/fxcodec/codec/ccodec_progressivedecoder.h @@ -155,17 +155,23 @@ class CCodec_ProgressiveDecoder : public CCodec_BmpModule::Delegate, FXCODEC_STATUS& err_status); bool GifReadMoreData(CCodec_GifModule* pGifModule, FXCODEC_STATUS& err_status); - void GifDoubleLineResampleVert(const RetainPtr& pDeviceBitmap, - double scale_y, - int des_row); + bool JpegReadMoreData(CCodec_JpegModule* pJpegModule, + FXCODEC_STATUS& err_status); void PngOneOneMapResampleHorz(const RetainPtr& pDeviceBitmap, int32_t des_line, uint8_t* src_scan, FXCodec_Format src_format); bool DetectImageType(FXCODEC_IMAGE_TYPE imageType, CFX_DIBAttribute* pAttribute); + bool BmpDetectImageType(CFX_DIBAttribute* pAttribute, uint32_t size); + bool JpegDetectImageType(CFX_DIBAttribute* pAttribute, uint32_t size); + bool PngDetectImageType(CFX_DIBAttribute* pAttribute, uint32_t size); + bool GifDetectImageType(CFX_DIBAttribute* pAttribute, uint32_t size); + bool TifDetectImageType(CFX_DIBAttribute* pAttribute, uint32_t size); + void GetDownScale(int& down_scale); void GetTransMethod(FXDIB_Format des_format, FXCodec_Format src_format); + void ReSampleScanline(const RetainPtr& pDeviceBitmap, int32_t des_line, uint8_t* src_scan, @@ -177,11 +183,12 @@ class CCodec_ProgressiveDecoder : public CCodec_BmpModule::Delegate, void ResampleVert(const RetainPtr& pDeviceBitmap, double scale_y, int des_row); - bool JpegReadMoreData(CCodec_JpegModule* pJpegModule, - FXCODEC_STATUS& err_status); void ResampleVertBT(const RetainPtr& pDeviceBitmap, double scale_y, int des_row); + void GifDoubleLineResampleVert(const RetainPtr& pDeviceBitmap, + double scale_y, + int des_row); RetainPtr m_pFile; RetainPtr m_pDeviceBitmap; -- cgit v1.2.3