Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(424)

Side by Side Diff: core/src/fpdfapi/fpdf_render/fpdf_render_loadimage.cpp

Issue 1243883003: Fix else-after-returns throughout pdfium. (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@master
Patch Set: Rebase, Address comments. Created 5 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « core/src/fpdfapi/fpdf_render/fpdf_render_image.cpp ('k') | core/src/fpdfdoc/doc_action.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 "../../../../third_party/base/nonstd_unique_ptr.h" 7 #include "../../../../third_party/base/nonstd_unique_ptr.h"
8 #include "../../../include/fpdfapi/fpdf_module.h" 8 #include "../../../include/fpdfapi/fpdf_module.h"
9 #include "../../../include/fpdfapi/fpdf_pageobj.h" 9 #include "../../../include/fpdfapi/fpdf_pageobj.h"
10 #include "../../../include/fpdfapi/fpdf_render.h" 10 #include "../../../include/fpdfapi/fpdf_render.h"
11 #include "../../../include/fxcodec/fx_codec.h" 11 #include "../../../include/fxcodec/fx_codec.h"
12 #include "../../../include/fxcrt/fx_safe_types.h" 12 #include "../../../include/fxcrt/fx_safe_types.h"
13 #include "../../../include/fxge/fx_ge.h" 13 #include "../../../include/fxge/fx_ge.h"
14 #include "../fpdf_page/pageint.h" 14 #include "../fpdf_page/pageint.h"
15 #include "render_int.h" 15 #include "render_int.h"
16 16
17 namespace { 17 namespace {
18 18
19 unsigned int _GetBits8(const uint8_t* pData, int bitpos, int nbits) 19 unsigned int _GetBits8(const uint8_t* pData, int bitpos, int nbits)
20 { 20 {
21 unsigned int byte = pData[bitpos / 8]; 21 unsigned int byte = pData[bitpos / 8];
22 if (nbits == 8) { 22 if (nbits == 8) {
23 return byte; 23 return byte;
24 } else if (nbits == 4) { 24 }
25 if (nbits == 4) {
25 return (bitpos % 8) ? (byte & 0x0f) : (byte >> 4); 26 return (bitpos % 8) ? (byte & 0x0f) : (byte >> 4);
26 } else if (nbits == 2) { 27 }
28 if (nbits == 2) {
27 return (byte >> (6 - bitpos % 8)) & 0x03; 29 return (byte >> (6 - bitpos % 8)) & 0x03;
28 } else if (nbits == 1) { 30 }
31 if (nbits == 1) {
29 return (byte >> (7 - bitpos % 8)) & 0x01; 32 return (byte >> (7 - bitpos % 8)) & 0x01;
30 } else if (nbits == 16) { 33 }
34 if (nbits == 16) {
31 return byte * 256 + pData[bitpos / 8 + 1]; 35 return byte * 256 + pData[bitpos / 8 + 1];
32 } 36 }
33 return 0; 37 return 0;
34 } 38 }
35 39
36 FX_SAFE_DWORD CalculatePitch8(FX_DWORD bpc, 40 FX_SAFE_DWORD CalculatePitch8(FX_DWORD bpc,
37 FX_DWORD components, 41 FX_DWORD components,
38 int width, 42 int width,
39 int height) 43 int height)
40 { 44 {
(...skipping 414 matching lines...) Expand 10 before | Expand all | Expand 10 after
455 ret1 = ContinueLoadMaskDIB(pPause); 459 ret1 = ContinueLoadMaskDIB(pPause);
456 m_Status = 2; 460 m_Status = 2;
457 } 461 }
458 if (ret1 == 2) { 462 if (ret1 == 2) {
459 return ret1; 463 return ret1;
460 } 464 }
461 if (m_pColorSpace && m_bStdCS) { 465 if (m_pColorSpace && m_bStdCS) {
462 m_pColorSpace->EnableStdConversion(FALSE); 466 m_pColorSpace->EnableStdConversion(FALSE);
463 } 467 }
464 return ret1; 468 return ret1;
465 } else if (m_Status == 2) { 469 }
470 if (m_Status == 2) {
466 return ContinueLoadMaskDIB(pPause); 471 return ContinueLoadMaskDIB(pPause);
467 } 472 }
468 return 0; 473 return 0;
469 } 474 }
470 FX_BOOL CPDF_DIBSource::LoadColorInfo(CPDF_Dictionary* pFormResources, CPDF_Dict ionary* pPageResources) 475 FX_BOOL CPDF_DIBSource::LoadColorInfo(CPDF_Dictionary* pFormResources, CPDF_Dict ionary* pPageResources)
471 { 476 {
472 m_bpc_orig = m_pDict->GetInteger(FX_BSTRC("BitsPerComponent")); 477 m_bpc_orig = m_pDict->GetInteger(FX_BSTRC("BitsPerComponent"));
473 if (m_pDict->GetInteger("ImageMask")) { 478 if (m_pDict->GetInteger("ImageMask")) {
474 m_bImageMask = TRUE; 479 m_bImageMask = TRUE;
475 } 480 }
(...skipping 525 matching lines...) Expand 10 before | Expand all | Expand 10 after
1001 G = NORMALCOLOR_MAX(G, max_data); 1006 G = NORMALCOLOR_MAX(G, max_data);
1002 B = NORMALCOLOR_MAX(B, max_data); 1007 B = NORMALCOLOR_MAX(B, max_data);
1003 dest_scan[dest_byte_pos] = B * 255 / max_data; 1008 dest_scan[dest_byte_pos] = B * 255 / max_data;
1004 dest_scan[dest_byte_pos + 1] = G * 255 / max_data; 1009 dest_scan[dest_byte_pos + 1] = G * 255 / max_data;
1005 dest_scan[dest_byte_pos + 2] = R * 255 / max_data; 1010 dest_scan[dest_byte_pos + 2] = R * 255 / max_data;
1006 dest_byte_pos += 3; 1011 dest_byte_pos += 3;
1007 } 1012 }
1008 break; 1013 break;
1009 } 1014 }
1010 return; 1015 return;
1011 } else if (m_bpc == 8) { 1016 }
1017 if (m_bpc == 8) {
1012 if (m_nComponents == m_pColorSpace->CountComponents()) 1018 if (m_nComponents == m_pColorSpace->CountComponents())
1013 m_pColorSpace->TranslateImageLine(dest_scan, src_scan, m_Width, m_Width, m_Height, 1019 m_pColorSpace->TranslateImageLine(dest_scan, src_scan, m_Width, m_Width, m_Height,
1014 m_bLoadMask && m_GroupFamily = = PDFCS_DEVICECMYK && m_Family == PDFCS_DEVICECMYK); 1020 m_bLoadMask && m_GroupFamily = = PDFCS_DEVICECMYK && m_Family == PDFCS_DEVICECMYK);
1015 return; 1021 return;
1016 } 1022 }
1017 } 1023 }
1018 CFX_FixedBufGrow<FX_FLOAT, 16> color_values1(m_nComponents); 1024 CFX_FixedBufGrow<FX_FLOAT, 16> color_values1(m_nComponents);
1019 FX_FLOAT* color_values = color_values1; 1025 FX_FLOAT* color_values = color_values1;
1020 FX_FLOAT R = 0.0f, G = 0.0f, B = 0.0f; 1026 FX_FLOAT R = 0.0f, G = 0.0f, B = 0.0f;
1021 if (m_bpc == 8) { 1027 if (m_bpc == 8) {
(...skipping 528 matching lines...) Expand 10 before | Expand all | Expand 10 after
1550 { 1556 {
1551 return ((CPDF_ProgressiveImageLoaderHandle*)LoadHandle)->Continue(pPause); 1557 return ((CPDF_ProgressiveImageLoaderHandle*)LoadHandle)->Continue(pPause);
1552 } 1558 }
1553 CPDF_ImageLoader::~CPDF_ImageLoader() 1559 CPDF_ImageLoader::~CPDF_ImageLoader()
1554 { 1560 {
1555 if (!m_bCached) { 1561 if (!m_bCached) {
1556 delete m_pBitmap; 1562 delete m_pBitmap;
1557 delete m_pMask; 1563 delete m_pMask;
1558 } 1564 }
1559 } 1565 }
OLDNEW
« no previous file with comments | « core/src/fpdfapi/fpdf_render/fpdf_render_image.cpp ('k') | core/src/fpdfdoc/doc_action.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698