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

Unified Diff: core/fxge/ge/cfx_fontmapper.cpp

Issue 2395883002: Use another vector for installed fonts in CFX_FontMapper (Closed)
Patch Set: Use std::pair Created 4 years, 2 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « core/fxge/cfx_fontmapper.h ('k') | core/fxge/win32/fx_win32_device.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: core/fxge/ge/cfx_fontmapper.cpp
diff --git a/core/fxge/ge/cfx_fontmapper.cpp b/core/fxge/ge/cfx_fontmapper.cpp
index 86dc2389d607a8ee77e96cd91478c94c70545c6c..3c05fab1fb1b3effe991b3bc78b9e48b8deb5105 100644
--- a/core/fxge/ge/cfx_fontmapper.cpp
+++ b/core/fxge/ge/cfx_fontmapper.cpp
@@ -348,8 +348,7 @@ void CFX_FontMapper::AddInstalledFont(const CFX_ByteString& name, int charset) {
CFX_ByteString new_name = GetPSNameFromTT(hFont);
if (!new_name.IsEmpty()) {
Tom Sepez 2016/10/06 15:58:03 nit: no {}
- new_name.Insert(0, ' ');
- m_InstalledTTFonts.push_back(new_name);
+ m_LocalizedTTFonts.push_back(std::make_pair(new_name, name));
}
m_pFontInfo->DeleteFont(hFont);
}
@@ -374,12 +373,17 @@ CFX_ByteString CFX_FontMapper::MatchInstalledFonts(
if (norm1 == norm_name)
break;
Tom Sepez 2016/10/06 15:58:03 nit: just return m_InstalledTTFonts[i] here?
}
- if (i < 0)
- return CFX_ByteString();
- CFX_ByteString match = m_InstalledTTFonts[i];
- if (match[0] == ' ')
- match = m_InstalledTTFonts[i + 1];
- return match;
+ if (i >= 0)
+ return m_InstalledTTFonts[i];
+ for (i = pdfium::CollectionSize<int>(m_LocalizedTTFonts) - 1; i >= 0; i--) {
+ CFX_ByteString norm1 =
+ TT_NormalizeName(m_LocalizedTTFonts[i].first.c_str());
+ if (norm1 == norm_name)
+ break;
Tom Sepez 2016/10/06 15:58:03 nit: same idea here.
+ }
+ if (i >= 0)
+ return m_LocalizedTTFonts[i].second;
+ return CFX_ByteString();
}
FXFT_Face CFX_FontMapper::UseInternalSubst(CFX_SubstFont* pSubstFont,
« no previous file with comments | « core/fxge/cfx_fontmapper.h ('k') | core/fxge/win32/fx_win32_device.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698