diff --git a/src/HighScore.cpp b/src/HighScore.cpp index 2ac44e775c..f87906da2a 100644 --- a/src/HighScore.cpp +++ b/src/HighScore.cpp @@ -445,6 +445,12 @@ void HighScoreList::MergeFromOtherHSL(HighScoreList& other, bool is_machine) vHighScores.erase(unique_end, vHighScores.end()); // Reverse it because sort moved the lesser scores to the top. std::reverse(vHighScores.begin(), vHighScores.end()); + + if (!PREFSMAN->m_bAllowMultipleHighScoreWithSameName) + { + // erase all but the highest score for each name + RemoveAllButOneOfEachName(); + } ClampSize(is_machine); }