| Index: core/fxcodec/codec/fx_codec_progress.cpp
|
| diff --git a/core/fxcodec/codec/fx_codec_progress.cpp b/core/fxcodec/codec/fx_codec_progress.cpp
|
| index 04ca7b26c214de5951f5851fceeab456afe5dfb9..3551fc272da9e29661f26bb6df9bec6f9a1e8fb5 100644
|
| --- a/core/fxcodec/codec/fx_codec_progress.cpp
|
| +++ b/core/fxcodec/codec/fx_codec_progress.cpp
|
| @@ -1322,12 +1322,18 @@ FXCODEC_STATUS CCodec_ProgressiveDecoder::LoadImageInfo(
|
| m_startX = m_startY = 0;
|
| m_sizeX = m_sizeY = 0;
|
| m_SrcPassNumber = 0;
|
| - if (bSkipImageTypeCheck || (imageType != FXCODEC_IMAGE_UNKNOWN &&
|
| - DetectImageType(imageType, pAttribute))) {
|
| + if (imageType != FXCODEC_IMAGE_UNKNOWN &&
|
| + DetectImageType(imageType, pAttribute)) {
|
| m_imagType = imageType;
|
| m_status = FXCODEC_STATUS_FRAME_READY;
|
| return m_status;
|
| }
|
| + // If we got here then the image data does not match the requested decoder.
|
| + // If we're skipping the type check then bail out at this point and return
|
| + // the failed status.
|
| + if (bSkipImageTypeCheck)
|
| + return m_status;
|
| +
|
| for (int type = FXCODEC_IMAGE_BMP; type < FXCODEC_IMAGE_MAX; type++) {
|
| if (DetectImageType((FXCODEC_IMAGE_TYPE)type, pAttribute)) {
|
| m_imagType = (FXCODEC_IMAGE_TYPE)type;
|
|
|