OLD | NEW |
1 // Copyright 2014 PDFium Authors. All rights reserved. | 1 // Copyright 2014 PDFium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com | 5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com |
6 | 6 |
7 #include "../../../include/fxcodec/fx_codec.h" | 7 #include "../../../include/fxcodec/fx_codec.h" |
| 8 #include "../../../include/fxcrt/fx_safe_types.h" |
8 #include "../../../include/fxge/fx_dib.h" | 9 #include "../../../include/fxge/fx_dib.h" |
9 #include "../../../src/fxcrt/fx_safe_types.h" | |
10 #include "codec_int.h" | 10 #include "codec_int.h" |
| 11 |
11 extern "C" { | 12 extern "C" { |
12 static void _JpegScanSOI(const FX_BYTE*& src_buf, FX_DWORD& src_size) | 13 static void _JpegScanSOI(const FX_BYTE*& src_buf, FX_DWORD& src_size) |
13 { | 14 { |
14 if (src_size == 0) { | 15 if (src_size == 0) { |
15 return; | 16 return; |
16 } | 17 } |
17 FX_DWORD offset = 0; | 18 FX_DWORD offset = 0; |
18 while (offset < src_size - 1) { | 19 while (offset < src_size - 1) { |
19 if (src_buf[offset] == 0xff && src_buf[offset + 1] == 0xd8) { | 20 if (src_buf[offset] == 0xff && src_buf[offset + 1] == 0xd8) { |
20 src_buf += offset; | 21 src_buf += offset; |
(...skipping 644 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
665 return m_pExtProvider->GetAvailInput(pContext, avail_buf_ptr); | 666 return m_pExtProvider->GetAvailInput(pContext, avail_buf_ptr); |
666 } | 667 } |
667 if(avail_buf_ptr != NULL) { | 668 if(avail_buf_ptr != NULL) { |
668 *avail_buf_ptr = NULL; | 669 *avail_buf_ptr = NULL; |
669 if(((FXJPEG_Context*)pContext)->m_SrcMgr.bytes_in_buffer > 0) { | 670 if(((FXJPEG_Context*)pContext)->m_SrcMgr.bytes_in_buffer > 0) { |
670 *avail_buf_ptr = (FX_LPBYTE)((FXJPEG_Context*)pContext)->m_SrcMgr.ne
xt_input_byte; | 671 *avail_buf_ptr = (FX_LPBYTE)((FXJPEG_Context*)pContext)->m_SrcMgr.ne
xt_input_byte; |
671 } | 672 } |
672 } | 673 } |
673 return (FX_DWORD)((FXJPEG_Context*)pContext)->m_SrcMgr.bytes_in_buffer; | 674 return (FX_DWORD)((FXJPEG_Context*)pContext)->m_SrcMgr.bytes_in_buffer; |
674 } | 675 } |
OLD | NEW |