diff --git a/modules/juce_graphics/native/juce_DirectWriteTypeface_windows.cpp b/modules/juce_graphics/native/juce_DirectWriteTypeface_windows.cpp index bc58c5c629..dee0481ff9 100644 --- a/modules/juce_graphics/native/juce_DirectWriteTypeface_windows.cpp +++ b/modules/juce_graphics/native/juce_DirectWriteTypeface_windows.cpp @@ -153,12 +153,18 @@ public: if (FAILED (collection->GetFontFamily (fontIndex, fontFamily.resetAndGetPointerAddress())) || fontFamily == nullptr) continue; - std::set results; + std::set uniqueResults; + StringArray orderedResults; for (const auto& font : getAllFontsInFamily (fontFamily)) - results.insert (getFontFaceName (font)); + { + const auto name = getFontFaceName (font); - return stringArrayFromRange (results); + if (uniqueResults.insert (name).second) + orderedResults.add (name); + } + + return orderedResults; } return {};