Loading gfx/thebes/gfxFcPlatformFontList.cpp +0 −27 Original line number Diff line number Diff line Loading @@ -1352,39 +1352,12 @@ bool gfxFontconfigFont::ShouldHintMetrics() const { return !GetStyle()->printerFont; } static nsresult SetFontconfigConfigFile() { nsCOMPtr<nsIProperties> dirSvc( do_GetService("@mozilla.org/file/directory_service;1")); NS_ENSURE_TRUE(dirSvc, NS_ERROR_NOT_AVAILABLE); nsCOMPtr<nsIFile> appFile, confDir; nsresult rv = dirSvc->Get(XRE_EXECUTABLE_FILE, NS_GET_IID(nsIFile), getter_AddRefs(appFile)); NS_ENSURE_SUCCESS(rv, rv); rv = appFile->GetParent(getter_AddRefs(confDir)); NS_ENSURE_SUCCESS(rv, rv); rv = confDir->AppendNative("fonts"_ns); NS_ENSURE_SUCCESS(rv, rv); nsAutoCString confPath; rv = confDir->GetNativePath(confPath); NS_ENSURE_SUCCESS(rv, rv); if (NS_WARN_IF(setenv("FONTCONFIG_PATH", confPath.BeginReading(), 1) != 0 || setenv("FONTCONFIG_FILE", "fonts.conf", 1) != 0)) { return NS_ERROR_FAILURE; } return NS_OK; } gfxFcPlatformFontList::gfxFcPlatformFontList() : mLocalNames(64), mGenericMappings(32), mFcSubstituteCache(64), mLastConfig(nullptr), mAlwaysUseFontconfigGenerics(true) { if (NS_FAILED(SetFontconfigConfigFile())) { NS_WARNING("Failed to set the fontconfig config file!"); } CheckFamilyList(kBaseFonts_Ubuntu_22_04); CheckFamilyList(kLangFonts_Ubuntu_22_04); CheckFamilyList(kBaseFonts_Ubuntu_20_04); Loading toolkit/xre/nsXREDirProvider.cpp +26 −0 Original line number Diff line number Diff line Loading @@ -744,6 +744,25 @@ void nsXREDirProvider::FinishInitializingUserPrefs() { } } #ifdef MOZ_WIDGET_GTK static nsresult SetFontconfigConfigFile(nsCOMPtr<nsIFile> appDir) { NS_ENSURE_TRUE(appDir, NS_ERROR_NULL_POINTER); nsCOMPtr<nsIFile> confDir; nsresult rv = appDir->Clone(getter_AddRefs(confDir)); NS_ENSURE_SUCCESS(rv, rv); rv = confDir->AppendNative("fonts"_ns); NS_ENSURE_SUCCESS(rv, rv); nsAutoCString confPath; rv = confDir->GetNativePath(confPath); NS_ENSURE_SUCCESS(rv, rv); if (NS_WARN_IF(setenv("FONTCONFIG_PATH", confPath.BeginReading(), 1) != 0 || setenv("FONTCONFIG_FILE", "fonts.conf", 1) != 0)) { return NS_ERROR_FAILURE; } return NS_OK; } #endif NS_IMETHODIMP nsXREDirProvider::DoStartup() { nsresult rv; Loading @@ -762,6 +781,13 @@ nsXREDirProvider::DoStartup() { */ MOZ_ASSERT(mPrefsInitialized); #ifdef MOZ_WIDGET_GTK // FontConfig might be initialized by GTK/Pango, so we need to define its // config variables before doing anything. rv = SetFontconfigConfigFile(mGREDir); NS_ENSURE_SUCCESS(rv, rv); #endif bool safeModeNecessary = false; nsCOMPtr<nsIAppStartup> appStartup( mozilla::components::AppStartup::Service()); Loading Loading
gfx/thebes/gfxFcPlatformFontList.cpp +0 −27 Original line number Diff line number Diff line Loading @@ -1352,39 +1352,12 @@ bool gfxFontconfigFont::ShouldHintMetrics() const { return !GetStyle()->printerFont; } static nsresult SetFontconfigConfigFile() { nsCOMPtr<nsIProperties> dirSvc( do_GetService("@mozilla.org/file/directory_service;1")); NS_ENSURE_TRUE(dirSvc, NS_ERROR_NOT_AVAILABLE); nsCOMPtr<nsIFile> appFile, confDir; nsresult rv = dirSvc->Get(XRE_EXECUTABLE_FILE, NS_GET_IID(nsIFile), getter_AddRefs(appFile)); NS_ENSURE_SUCCESS(rv, rv); rv = appFile->GetParent(getter_AddRefs(confDir)); NS_ENSURE_SUCCESS(rv, rv); rv = confDir->AppendNative("fonts"_ns); NS_ENSURE_SUCCESS(rv, rv); nsAutoCString confPath; rv = confDir->GetNativePath(confPath); NS_ENSURE_SUCCESS(rv, rv); if (NS_WARN_IF(setenv("FONTCONFIG_PATH", confPath.BeginReading(), 1) != 0 || setenv("FONTCONFIG_FILE", "fonts.conf", 1) != 0)) { return NS_ERROR_FAILURE; } return NS_OK; } gfxFcPlatformFontList::gfxFcPlatformFontList() : mLocalNames(64), mGenericMappings(32), mFcSubstituteCache(64), mLastConfig(nullptr), mAlwaysUseFontconfigGenerics(true) { if (NS_FAILED(SetFontconfigConfigFile())) { NS_WARNING("Failed to set the fontconfig config file!"); } CheckFamilyList(kBaseFonts_Ubuntu_22_04); CheckFamilyList(kLangFonts_Ubuntu_22_04); CheckFamilyList(kBaseFonts_Ubuntu_20_04); Loading
toolkit/xre/nsXREDirProvider.cpp +26 −0 Original line number Diff line number Diff line Loading @@ -744,6 +744,25 @@ void nsXREDirProvider::FinishInitializingUserPrefs() { } } #ifdef MOZ_WIDGET_GTK static nsresult SetFontconfigConfigFile(nsCOMPtr<nsIFile> appDir) { NS_ENSURE_TRUE(appDir, NS_ERROR_NULL_POINTER); nsCOMPtr<nsIFile> confDir; nsresult rv = appDir->Clone(getter_AddRefs(confDir)); NS_ENSURE_SUCCESS(rv, rv); rv = confDir->AppendNative("fonts"_ns); NS_ENSURE_SUCCESS(rv, rv); nsAutoCString confPath; rv = confDir->GetNativePath(confPath); NS_ENSURE_SUCCESS(rv, rv); if (NS_WARN_IF(setenv("FONTCONFIG_PATH", confPath.BeginReading(), 1) != 0 || setenv("FONTCONFIG_FILE", "fonts.conf", 1) != 0)) { return NS_ERROR_FAILURE; } return NS_OK; } #endif NS_IMETHODIMP nsXREDirProvider::DoStartup() { nsresult rv; Loading @@ -762,6 +781,13 @@ nsXREDirProvider::DoStartup() { */ MOZ_ASSERT(mPrefsInitialized); #ifdef MOZ_WIDGET_GTK // FontConfig might be initialized by GTK/Pango, so we need to define its // config variables before doing anything. rv = SetFontconfigConfigFile(mGREDir); NS_ENSURE_SUCCESS(rv, rv); #endif bool safeModeNecessary = false; nsCOMPtr<nsIAppStartup> appStartup( mozilla::components::AppStartup::Service()); Loading