diff --git a/src/servers/app/font/FontManager.cpp b/src/servers/app/font/FontManager.cpp index 4e1f4842cd..6a4e1d8376 100644 --- a/src/servers/app/font/FontManager.cpp +++ b/src/servers/app/font/FontManager.cpp @@ -126,6 +126,9 @@ FontManager::FontManager() // Precache the plain and bold fonts _PrecacheFontFile(fDefaultPlainFont.Get()); _PrecacheFontFile(fDefaultBoldFont.Get()); + + // Post a message so we scan the initial paths. + PostMessage(B_PULSE); } } } @@ -297,6 +300,9 @@ FontManager::MessageReceived(BMessage* message) break; } + // Scan fonts here if we need to, preventing other threads from having to do so. + _ScanFontsIfNecessary(); + BLooper::MessageReceived(message); }