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 "cmap_int.h" | 7 #include "cmap_int.h" |
8 | 8 |
9 #include "core/include/fpdfapi/fpdf_module.h" | 9 #include "core/include/fpdfapi/fpdf_module.h" |
10 #include "core/include/fpdfapi/fpdf_resource.h" | 10 #include "core/include/fpdfapi/fpdf_resource.h" |
(...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
98 } | 98 } |
99 if (pMap->m_UseOffset == 0) { | 99 if (pMap->m_UseOffset == 0) { |
100 return 0; | 100 return 0; |
101 } | 101 } |
102 pMap = pMap + pMap->m_UseOffset; | 102 pMap = pMap + pMap->m_UseOffset; |
103 } | 103 } |
104 return 0; | 104 return 0; |
105 } | 105 } |
106 FX_WORD code = (FX_WORD)charcode; | 106 FX_WORD code = (FX_WORD)charcode; |
107 while (1) { | 107 while (1) { |
108 if (pMap->m_pWordMap == NULL) { | 108 if (!pMap->m_pWordMap) { |
109 return 0; | 109 return 0; |
110 } | 110 } |
111 if (pMap->m_WordMapType == FXCMAP_CMap::Single) { | 111 if (pMap->m_WordMapType == FXCMAP_CMap::Single) { |
112 FX_WORD* found = (FX_WORD*)FXSYS_bsearch( | 112 FX_WORD* found = (FX_WORD*)FXSYS_bsearch( |
113 &code, pMap->m_pWordMap, pMap->m_WordCount, 4, compareWord); | 113 &code, pMap->m_pWordMap, pMap->m_WordCount, 4, compareWord); |
114 if (found) { | 114 if (found) { |
115 return found[1]; | 115 return found[1]; |
116 } | 116 } |
117 } else if (pMap->m_WordMapType == FXCMAP_CMap::Range) { | 117 } else if (pMap->m_WordMapType == FXCMAP_CMap::Range) { |
118 FX_WORD* found = (FX_WORD*)FXSYS_bsearch( | 118 FX_WORD* found = (FX_WORD*)FXSYS_bsearch( |
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
183 } | 183 } |
184 | 184 |
185 void FPDFAPI_LoadCID2UnicodeMap(CIDSet charset, | 185 void FPDFAPI_LoadCID2UnicodeMap(CIDSet charset, |
186 const FX_WORD*& pMap, | 186 const FX_WORD*& pMap, |
187 FX_DWORD& count) { | 187 FX_DWORD& count) { |
188 CPDF_FontGlobals* pFontGlobals = | 188 CPDF_FontGlobals* pFontGlobals = |
189 CPDF_ModuleMgr::Get()->GetPageModule()->GetFontGlobals(); | 189 CPDF_ModuleMgr::Get()->GetPageModule()->GetFontGlobals(); |
190 pMap = pFontGlobals->m_EmbeddedToUnicodes[charset].m_pMap; | 190 pMap = pFontGlobals->m_EmbeddedToUnicodes[charset].m_pMap; |
191 count = pFontGlobals->m_EmbeddedToUnicodes[charset].m_Count; | 191 count = pFontGlobals->m_EmbeddedToUnicodes[charset].m_Count; |
192 } | 192 } |
OLD | NEW |