diff options
Diffstat (limited to 'native')
| -rw-r--r-- | native/android/configuration.cpp | 2 | ||||
| -rw-r--r-- | native/android/system_fonts.cpp | 9 |
2 files changed, 6 insertions, 5 deletions
diff --git a/native/android/configuration.cpp b/native/android/configuration.cpp index b50514d27bac..283445fc8a9a 100644 --- a/native/android/configuration.cpp +++ b/native/android/configuration.cpp @@ -36,7 +36,7 @@ void AConfiguration_delete(AConfiguration* config) { void AConfiguration_fromAssetManager(AConfiguration* out, AAssetManager* am) { ScopedLock<AssetManager2> locked_mgr(*AssetManagerForNdkAssetManager(am)); - ResTable_config config = locked_mgr->GetConfiguration(); + ResTable_config config = locked_mgr->GetConfigurations()[0]; // AConfiguration is not a virtual subclass, so we can memcpy. memcpy(out, &config, sizeof(config)); diff --git a/native/android/system_fonts.cpp b/native/android/system_fonts.cpp index fe3132e3d2a3..de7ea701b26d 100644 --- a/native/android/system_fonts.cpp +++ b/native/android/system_fonts.cpp @@ -251,14 +251,15 @@ ASystemFontIterator* ASystemFontIterator_open() { locale.emplace(minikin::getLocaleString(localeId)); } std::vector<std::pair<uint32_t, float>> axes; - for (const auto& [tag, value] : font->typeface()->GetAxes()) { + for (const auto& [tag, value] : font->baseTypeface()->GetAxes()) { axes.push_back(std::make_pair(tag, value)); } - fonts.insert({font->typeface()->GetFontPath(), std::move(locale), + fonts.insert({font->baseTypeface()->GetFontPath(), std::move(locale), font->style().weight(), font->style().slant() == minikin::FontStyle::Slant::ITALIC, - static_cast<uint32_t>(font->typeface()->GetFontIndex()), axes}); + static_cast<uint32_t>(font->baseTypeface()->GetFontIndex()), + axes}); } }); @@ -323,7 +324,7 @@ AFont* _Nonnull AFontMatcher_match( .font; std::unique_ptr<AFont> result = std::make_unique<AFont>(); const android::MinikinFontSkia* minikinFontSkia = - reinterpret_cast<android::MinikinFontSkia*>(font->typeface().get()); + reinterpret_cast<android::MinikinFontSkia*>(font->baseTypeface().get()); result->mFilePath = minikinFontSkia->getFilePath(); result->mWeight = font->style().weight(); result->mItalic = font->style().slant() == minikin::FontStyle::Slant::ITALIC; |