diff options
author | Nico Weber <thakis@chromium.org> | 2014-07-16 11:07:33 -0700 |
---|---|---|
committer | Nico Weber <thakis@chromium.org> | 2014-07-16 11:07:33 -0700 |
commit | 27e35a861aac4652aa044ab3b3c4e1b0d620a5fc (patch) | |
tree | 339784c4dff58f10bf1fb361c861ee63e98c80af /core/src | |
parent | b44bac50e1412fe34457459904b8784c489d04b6 (diff) | |
download | pdfium-27e35a861aac4652aa044ab3b3c4e1b0d620a5fc.tar.xz |
Remove uninitialized const global g_GbFontNameMap.
C++11 makes uninitialized const PODs an error, because they contain
uninitialized memory (they're uninitialized that can never be initialized
(because they're const).
In this case, the memory was only used by _GetSubFontName() if the lang
parameter was 1, but _GetSubFontName() is only called from one place, with
a lang parameter of 0. So remove _GetSubFontName()'s lang parameter too.
(Using bsearch for searching an array that always has exactly 2 entries is
overkill too, but I'm trying to keep the diff small.)
No intended behavior change. Fixes this error on the clang/win bot:
..\..\third_party\pdfium\core\src\fxge\win32\fx_win32_device.cpp(207,20) : error(clang): default initialization of an object of const type 'const _FontNameMap [1]'
const _FontNameMap g_GbFontNameMap[1];
^
BUG=chromium:82385
R=bo_xu@foxitsoftware.com
Review URL: https://codereview.chromium.org/369343003
Diffstat (limited to 'core/src')
-rw-r--r-- | core/src/fxge/win32/fx_win32_device.cpp | 11 |
1 files changed, 2 insertions, 9 deletions
diff --git a/core/src/fxge/win32/fx_win32_device.cpp b/core/src/fxge/win32/fx_win32_device.cpp index 9c03a30837..044468ff05 100644 --- a/core/src/fxge/win32/fx_win32_device.cpp +++ b/core/src/fxge/win32/fx_win32_device.cpp @@ -204,23 +204,16 @@ const _FontNameMap g_JpFontNameMap[] = { {"MS Mincho", "Heiseimin-W3"}, {"MS Gothic", "Jun101-Light"}, }; -const _FontNameMap g_GbFontNameMap[1]; extern "C" { static int compareString(const void* key, const void* element) { return FXSYS_stricmp((FX_LPCSTR)key, ((_FontNameMap*)element)->m_pSrcFontName); } } -FX_BOOL _GetSubFontName(CFX_ByteString& name, int lang) +FX_BOOL _GetSubFontName(CFX_ByteString& name) { int size = sizeof g_JpFontNameMap; void* pFontnameMap = (void*)g_JpFontNameMap; - if (lang == 1) { - size = sizeof g_GbFontNameMap; - pFontnameMap = (void*)g_GbFontNameMap; - } else if (lang == 2) { - size = 0; - } _FontNameMap* found = (_FontNameMap*)FXSYS_bsearch((FX_LPCSTR)name, pFontnameMap, size / sizeof (_FontNameMap), sizeof (_FontNameMap), compareString); if (found == NULL) { @@ -280,7 +273,7 @@ void CWin32FontInfo::GetJapanesePreference(CFX_ByteString& face, int weight, int } return; } - if (_GetSubFontName(face, 0)) { + if (_GetSubFontName(face)) { return; } if (!(picth_family & FF_ROMAN) && weight > 400) { |