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

Side by Side Diff: core/src/fpdfapi/fpdf_font/fpdf_font_cid.cpp

Issue 1243883003: Fix else-after-returns throughout pdfium. (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@master
Patch Set: 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
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 "../../../include/fpdfapi/fpdf_module.h" 7 #include "../../../include/fpdfapi/fpdf_module.h"
8 #include "../../../include/fpdfapi/fpdf_page.h" 8 #include "../../../include/fpdfapi/fpdf_page.h"
9 #include "font_int.h" 9 #include "font_int.h"
10 #include "../fpdf_cmaps/cmap_int.h" 10 #include "../fpdf_cmaps/cmap_int.h"
(...skipping 622 matching lines...) Expand 10 before | Expand all | Expand 10 after
633 _CMap_CodeRange* pRanges = (_CMap_CodeRange*)m_pLeadingBytes; 633 _CMap_CodeRange* pRanges = (_CMap_CodeRange*)m_pLeadingBytes;
634 int iSize = _GetCharSize(charcode, pRanges, m_nCodeRanges); 634 int iSize = _GetCharSize(charcode, pRanges, m_nCodeRanges);
635 if (iSize == 0) { 635 if (iSize == 0) {
636 iSize = 1; 636 iSize = 1;
637 } 637 }
638 if (iSize > 1) { 638 if (iSize > 1) {
639 FXSYS_memset(str, 0, sizeof(uint8_t) * iSize); 639 FXSYS_memset(str, 0, sizeof(uint8_t) * iSize);
640 } 640 }
641 str[iSize - 1] = (uint8_t)charcode; 641 str[iSize - 1] = (uint8_t)charcode;
642 return iSize; 642 return iSize;
643 } else if (charcode < 0x10000) { 643 }
644 if (charcode < 0x10000) {
644 str[0] = (uint8_t)(charcode >> 8); 645 str[0] = (uint8_t)(charcode >> 8);
645 str[1] = (uint8_t)charcode; 646 str[1] = (uint8_t)charcode;
646 return 2; 647 return 2;
647 } else if (charcode < 0x1000000) { 648 }
649 if (charcode < 0x1000000) {
648 str[0] = (uint8_t)(charcode >> 16); 650 str[0] = (uint8_t)(charcode >> 16);
649 str[1] = (uint8_t)(charcode >> 8); 651 str[1] = (uint8_t)(charcode >> 8);
650 str[2] = (uint8_t)charcode; 652 str[2] = (uint8_t)charcode;
651 return 3; 653 return 3;
652 } else {
653 str[0] = (uint8_t)(charcode >> 24);
654 str[1] = (uint8_t)(charcode >> 16);
655 str[2] = (uint8_t)(charcode >> 8);
656 str[3] = (uint8_t)charcode;
657 return 4;
658 } 654 }
655 str[0] = (uint8_t)(charcode >> 24);
656 str[1] = (uint8_t)(charcode >> 16);
657 str[2] = (uint8_t)(charcode >> 8);
658 str[3] = (uint8_t)charcode;
659 return 4;
659 } 660 }
660 return 0; 661 return 0;
661 } 662 }
662 CPDF_CID2UnicodeMap::CPDF_CID2UnicodeMap() 663 CPDF_CID2UnicodeMap::CPDF_CID2UnicodeMap()
663 { 664 {
664 m_EmbeddedCount = 0; 665 m_EmbeddedCount = 0;
665 } 666 }
666 CPDF_CID2UnicodeMap::~CPDF_CID2UnicodeMap() 667 CPDF_CID2UnicodeMap::~CPDF_CID2UnicodeMap()
667 { 668 {
668 } 669 }
(...skipping 117 matching lines...) Expand 10 before | Expand all | Expand 10 after
786 charsize = 2; 787 charsize = 2;
787 } 788 }
788 int ret = FXSYS_MultiByteToWideChar(g_CharsetCPs[m_pCMap->m_Coding], 0, (const FX_CHAR*)&charcode, charsize, &unicode, 1); 789 int ret = FXSYS_MultiByteToWideChar(g_CharsetCPs[m_pCMap->m_Coding], 0, (const FX_CHAR*)&charcode, charsize, &unicode, 1);
789 if (ret != 1) { 790 if (ret != 1) {
790 return 0; 791 return 0;
791 } 792 }
792 return unicode; 793 return unicode;
793 #endif 794 #endif
794 if (m_pCMap->m_pEmbedMap) { 795 if (m_pCMap->m_pEmbedMap) {
795 return _EmbeddedUnicodeFromCharcode(m_pCMap->m_pEmbedMap, m_pCMap->m _Charset, charcode); 796 return _EmbeddedUnicodeFromCharcode(m_pCMap->m_pEmbedMap, m_pCMap->m _Charset, charcode);
796 } else {
797 return 0;
798 } 797 }
798 return 0;
799 } 799 }
800 return m_pCID2UnicodeMap->UnicodeFromCID(CIDFromCharCode(charcode)); 800 return m_pCID2UnicodeMap->UnicodeFromCID(CIDFromCharCode(charcode));
801 } 801 }
802 FX_DWORD CPDF_CIDFont::_CharCodeFromUnicode(FX_WCHAR unicode) const 802 FX_DWORD CPDF_CIDFont::_CharCodeFromUnicode(FX_WCHAR unicode) const
803 { 803 {
804 switch (m_pCMap->m_Coding) { 804 switch (m_pCMap->m_Coding) {
805 case CIDCODING_UNKNOWN: 805 case CIDCODING_UNKNOWN:
806 return 0; 806 return 0;
807 case CIDCODING_UCS2: 807 case CIDCODING_UCS2:
808 case CIDCODING_UTF16: 808 case CIDCODING_UTF16:
809 return unicode; 809 return unicode;
810 case CIDCODING_CID: { 810 case CIDCODING_CID: {
811 if (m_pCID2UnicodeMap == NULL || !m_pCID2UnicodeMap->IsLoaded()) { 811 if (m_pCID2UnicodeMap == NULL || !m_pCID2UnicodeMap->IsLoaded()) {
812 return 0; 812 return 0;
813 } 813 }
814 FX_DWORD CID = 0; 814 FX_DWORD CID = 0;
815 while (CID < 65536) { 815 while (CID < 65536) {
816 FX_WCHAR this_unicode = m_pCID2UnicodeMap->UnicodeFromCID((F X_WORD)CID); 816 FX_WCHAR this_unicode = m_pCID2UnicodeMap->UnicodeFromCID((F X_WORD)CID);
817 if (this_unicode == unicode) { 817 if (this_unicode == unicode) {
818 return CID; 818 return CID;
819 } 819 }
820 CID ++; 820 CID ++;
821 } 821 }
822 break; 822 break;
823 } 823 }
824 } 824 }
825 825
826 if (unicode < 0x80) { 826 if (unicode < 0x80) {
827 return static_cast<FX_DWORD>(unicode); 827 return static_cast<FX_DWORD>(unicode);
828 } else if (m_pCMap->m_Coding == CIDCODING_CID) { 828 }
829 if (m_pCMap->m_Coding == CIDCODING_CID) {
829 return 0; 830 return 0;
830 } 831 }
831 #if _FXM_PLATFORM_ == _FXM_PLATFORM_WINDOWS_ 832 #if _FXM_PLATFORM_ == _FXM_PLATFORM_WINDOWS_
832 uint8_t buffer[32]; 833 uint8_t buffer[32];
833 int ret = FXSYS_WideCharToMultiByte(g_CharsetCPs[m_pCMap->m_Coding], 0, &uni code, 1, (char*)buffer, 4, NULL, NULL); 834 int ret = FXSYS_WideCharToMultiByte(g_CharsetCPs[m_pCMap->m_Coding], 0, &uni code, 1, (char*)buffer, 4, NULL, NULL);
834 if (ret == 1) { 835 if (ret == 1) {
835 return buffer[0]; 836 return buffer[0];
836 } else if (ret == 2) { 837 }
838 if (ret == 2) {
837 return buffer[0] * 256 + buffer[1]; 839 return buffer[0] * 256 + buffer[1];
838 } 840 }
839 return 0; 841 #else
840 #endif
841 if (m_pCMap->m_pEmbedMap) { 842 if (m_pCMap->m_pEmbedMap) {
842 return _EmbeddedCharcodeFromUnicode(m_pCMap->m_pEmbedMap, m_pCMap->m_Cha rset, unicode); 843 return _EmbeddedCharcodeFromUnicode(m_pCMap->m_pEmbedMap, m_pCMap->m_Cha rset, unicode);
843 } 844 }
845 #endif
844 return 0; 846 return 0;
845 } 847 }
846 static void FT_UseCIDCharmap(FXFT_Face face, int coding) 848 static void FT_UseCIDCharmap(FXFT_Face face, int coding)
847 { 849 {
848 int encoding; 850 int encoding;
849 switch (coding) { 851 switch (coding) {
850 case CIDCODING_GB: 852 case CIDCODING_GB:
851 encoding = FXFT_ENCODING_GB2312; 853 encoding = FXFT_ENCODING_GB2312;
852 break; 854 break;
853 case CIDCODING_BIG5: 855 case CIDCODING_BIG5:
(...skipping 372 matching lines...) Expand 10 before | Expand all | Expand 10 after
1226 FX_DWORD maccode = FT_CharCodeFromUnicode(FXFT_ENCODING_APPL E_ROMAN, unicode); 1228 FX_DWORD maccode = FT_CharCodeFromUnicode(FXFT_ENCODING_APPL E_ROMAN, unicode);
1227 index = !maccode ? FXFT_Get_Name_Index(m_Font.m_Face, (char *)name) : FXFT_Get_Char_Index(m_Font.m_Face, maccode); 1229 index = !maccode ? FXFT_Get_Name_Index(m_Font.m_Face, (char *)name) : FXFT_Get_Char_Index(m_Font.m_Face, maccode);
1228 } else { 1230 } else {
1229 return FXFT_Get_Char_Index(m_Font.m_Face, unicode); 1231 return FXFT_Get_Char_Index(m_Font.m_Face, unicode);
1230 } 1232 }
1231 } else { 1233 } else {
1232 return charcode == 0 ? -1 : (int)charcode; 1234 return charcode == 0 ? -1 : (int)charcode;
1233 } 1235 }
1234 if (index == 0 || index == 0xffff) { 1236 if (index == 0 || index == 0xffff) {
1235 return charcode == 0 ? -1 : (int)charcode; 1237 return charcode == 0 ? -1 : (int)charcode;
1236 } else {
1237 return index;
1238 } 1238 }
1239 return index;
1239 } 1240 }
1240 if (m_Charset == CIDSET_JAPAN1) { 1241 if (m_Charset == CIDSET_JAPAN1) {
1241 if (unicode == '\\') { 1242 if (unicode == '\\') {
1242 unicode = '/'; 1243 unicode = '/';
1243 } 1244 }
1244 #if _FXM_PLATFORM_ != _FXM_PLATFORM_APPLE_ 1245 #if _FXM_PLATFORM_ != _FXM_PLATFORM_APPLE_
1245 else if (unicode == 0xa5) { 1246 else if (unicode == 0xa5) {
1246 unicode = 0x5c; 1247 unicode = 0x5c;
1247 } 1248 }
1248 #endif 1249 #endif
(...skipping 335 matching lines...) Expand 10 before | Expand all | Expand 10 after
1584 if (middlecode > CID) { 1585 if (middlecode > CID) {
1585 end = middle - 1; 1586 end = middle - 1;
1586 } else if (middlecode < CID) { 1587 } else if (middlecode < CID) {
1587 begin = middle + 1; 1588 begin = middle + 1;
1588 } else { 1589 } else {
1589 return &Japan1_VertCIDs[middle].a; 1590 return &Japan1_VertCIDs[middle].a;
1590 } 1591 }
1591 } 1592 }
1592 return NULL; 1593 return NULL;
1593 } 1594 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698