Bug 1565966 - part 1 - Normalize font family names to lowercase in mAliasTable, for consistency with eventual font-family lookups. r=jwatt

Differential Revision: https://phabricator.services.mozilla.com/D41242

--HG--
extra : moz-landing-system : lando
This commit is contained in:
Jonathan Kew 2019-08-12 17:49:09 +00:00
Родитель 05409ea18f
Коммит f2b7b9146f
3 изменённых файлов: 9 добавлений и 7 удалений

Просмотреть файл

@ -642,9 +642,7 @@ void FontList::SetAliases(
nsTArray<Family::InitData> aliasArray;
aliasArray.SetCapacity(aAliasTable.Count());
for (auto i = aAliasTable.Iter(); !i.Done(); i.Next()) {
nsAutoCString key(i.Key());
ToLowerCase(key);
aliasArray.AppendElement(Family::InitData(key, i.Key()));
aliasArray.AppendElement(Family::InitData(i.Key(), i.Key()));
}
aliasArray.Sort();

Просмотреть файл

@ -1163,7 +1163,9 @@ void gfxDWriteFontList::ReadFaceNamesForFamily(
gfxFontUtils::ReadOtherFamilyNamesForFace(familyName, data, size,
otherFamilyNames, false);
for (const auto& alias : otherFamilyNames) {
auto af = mAliasTable.LookupOrAdd(alias);
nsAutoCString key(alias);
ToLowerCase(key);
auto af = mAliasTable.LookupOrAdd(key);
af->AppendElement(facePtrs[i]);
}

Просмотреть файл

@ -1065,13 +1065,13 @@ void gfxMacPlatformFontList::InitAliasesForSingleFaceList() {
if (face->mDescriptor.AsString(list).Equals(familyName)) {
// Found it! Create an entry in the Alias table.
GenerateFontListKey(familyName, key);
if (SharedFontList()->FindFamily(key) || mAliasTable.Get(familyName)) {
if (SharedFontList()->FindFamily(key) || mAliasTable.Get(key)) {
// If the family name is already known, something's misconfigured;
// just ignore it.
MOZ_ASSERT(false, "single-face family already known");
break;
}
auto af = mAliasTable.LookupOrAdd(familyName);
auto af = mAliasTable.LookupOrAdd(key);
af->AppendElement(facePtrs[i]);
break;
}
@ -1792,7 +1792,9 @@ void gfxMacPlatformFontList::ReadFaceNamesForFamily(fontlist::Family* aFamily,
gfxFontUtils::ReadOtherFamilyNamesForFace(canonicalName, nameData, dataLength, otherFamilyNames,
false);
for (const auto& alias : otherFamilyNames) {
auto af = mAliasTable.LookupOrAdd(alias);
nsAutoCString key;
GenerateFontListKey(alias, key);
auto af = mAliasTable.LookupOrAdd(key);
af->AppendElement(facePtrs[i]);
}
}