summaryrefslogtreecommitdiff
path: root/core/src/fpdfapi/fpdf_cmaps/Japan1/cmaps_japan1.cpp
diff options
context:
space:
mode:
authorTom Sepez <tsepez@chromium.org>2015-07-14 17:06:23 -0700
committerTom Sepez <tsepez@chromium.org>2015-07-14 17:06:23 -0700
commit759247991b5f1df71335294e6bfe3e3fe7aec7b4 (patch)
tree3de1b72b34c3eae83f4b9fa58e978a643ff0bf6a /core/src/fpdfapi/fpdf_cmaps/Japan1/cmaps_japan1.cpp
parentdacc22cdfea727a04bce086d9bfec9a4d1a29bd4 (diff)
downloadpdfium-759247991b5f1df71335294e6bfe3e3fe7aec7b4.tar.xz
Move extern cmap declarations from .cpp files into new .h files.
That way, the compiler can check them against the definitions rather than just relying on the linker to line things up. Make the types of the declarations and definitions match exactly, instead of being synonym typedefs of each other. Fix some IWYU and use FX_ArraySize where possible. BUG=https://code.google.com/p/pdfium/issues/detail?id=178 R=thestig@chromium.org Review URL: https://codereview.chromium.org/1221503005 .
Diffstat (limited to 'core/src/fpdfapi/fpdf_cmaps/Japan1/cmaps_japan1.cpp')
-rw-r--r--core/src/fpdfapi/fpdf_cmaps/Japan1/cmaps_japan1.cpp28
1 files changed, 5 insertions, 23 deletions
diff --git a/core/src/fpdfapi/fpdf_cmaps/Japan1/cmaps_japan1.cpp b/core/src/fpdfapi/fpdf_cmaps/Japan1/cmaps_japan1.cpp
index 4402de7e06..e5002d6445 100644
--- a/core/src/fpdfapi/fpdf_cmaps/Japan1/cmaps_japan1.cpp
+++ b/core/src/fpdfapi/fpdf_cmaps/Japan1/cmaps_japan1.cpp
@@ -6,30 +6,11 @@
#include "../../../../include/fpdfapi/fpdf_resource.h"
#include "../../../../include/fpdfapi/fpdf_module.h"
+#include "../../../../include/fxcrt/fx_basic.h" // For FX_ArraySize().
#include "../../fpdf_font/font_int.h"
#include "../cmap_int.h"
-extern const FX_WORD g_FXCMAP_83pv_RKSJ_H_1[];
-extern const FX_WORD g_FXCMAP_90ms_RKSJ_H_2[];
-extern const FX_WORD g_FXCMAP_90ms_RKSJ_V_2[];
-extern const FX_WORD g_FXCMAP_90msp_RKSJ_H_2[];
-extern const FX_WORD g_FXCMAP_90msp_RKSJ_V_2[];
-extern const FX_WORD g_FXCMAP_90pv_RKSJ_H_1[];
-extern const FX_WORD g_FXCMAP_Add_RKSJ_H_1[];
-extern const FX_WORD g_FXCMAP_Add_RKSJ_V_1[];
-extern const FX_WORD g_FXCMAP_EUC_H_1[];
-extern const FX_WORD g_FXCMAP_EUC_V_1[];
-extern const FX_WORD g_FXCMAP_Ext_RKSJ_H_2[];
-extern const FX_WORD g_FXCMAP_Ext_RKSJ_V_2[];
-extern const FX_WORD g_FXCMAP_H_1[];
-extern const FX_WORD g_FXCMAP_V_1[];
-extern const FX_WORD g_FXCMAP_UniJIS_UCS2_H_4[];
-extern const FX_WORD g_FXCMAP_UniJIS_UCS2_V_4[];
-extern const FX_WORD g_FXCMAP_UniJIS_UCS2_HW_H_4[];
-extern const FX_WORD g_FXCMAP_UniJIS_UCS2_HW_V_4[];
-extern const FX_WORD g_FXCMAP_UniJIS_UTF16_H_0[];
-extern const FX_WORD g_FXCMAP_UniJIS_UTF16_H_0_DWord[];
-extern const FX_WORD g_FXCMAP_UniJIS_UTF16_V_0[];
-extern const FX_WORD g_FXCMAP_Japan1CID2Unicode_4[];
+#include "cmaps_japan1.h"
+
static const FXCMAP_CMap g_FXCMAP_Japan1_cmaps[] = {
{ "83pv-RKSJ-H", FXCMAP_CMap::Range, g_FXCMAP_83pv_RKSJ_H_1, 222, FXCMAP_CMap::None, NULL, 0, 0 },
{ "90ms-RKSJ-H", FXCMAP_CMap::Range, g_FXCMAP_90ms_RKSJ_H_2, 171, FXCMAP_CMap::None, NULL, 0, 0 },
@@ -52,11 +33,12 @@ static const FXCMAP_CMap g_FXCMAP_Japan1_cmaps[] = {
{ "UniJIS-UTF16-H", FXCMAP_CMap::Single, g_FXCMAP_UniJIS_UCS2_H_4, 9772, FXCMAP_CMap::None, NULL, 0, 0 },
{ "UniJIS-UTF16-V", FXCMAP_CMap::Single, g_FXCMAP_UniJIS_UCS2_V_4, 251, FXCMAP_CMap::None, NULL, 0, -1 },
};
+
void CPDF_ModuleMgr::LoadEmbeddedJapan1CMaps()
{
CPDF_FontGlobals* pFontGlobals = CPDF_ModuleMgr::Get()->GetPageModule()->GetFontGlobals();
pFontGlobals->m_EmbeddedCharsets[CIDSET_JAPAN1].m_pMapList = g_FXCMAP_Japan1_cmaps;
- pFontGlobals->m_EmbeddedCharsets[CIDSET_JAPAN1].m_Count = sizeof g_FXCMAP_Japan1_cmaps / sizeof (FXCMAP_CMap);
+ pFontGlobals->m_EmbeddedCharsets[CIDSET_JAPAN1].m_Count = FX_ArraySize(g_FXCMAP_Japan1_cmaps);
pFontGlobals->m_EmbeddedToUnicodes[CIDSET_JAPAN1].m_pMap = g_FXCMAP_Japan1CID2Unicode_4;
pFontGlobals->m_EmbeddedToUnicodes[CIDSET_JAPAN1].m_Count = 15444;
}