From 8d460ba70b4ba90b017e9d3a451b7683ed8eafe0 Mon Sep 17 00:00:00 2001 From: Glenn Maynard Date: Wed, 6 Apr 2005 08:17:29 +0000 Subject: [PATCH] make edit sorts consistent; fix description sorting --- stepmania/src/StepsUtil.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/stepmania/src/StepsUtil.cpp b/stepmania/src/StepsUtil.cpp index 60b7ca4c82..ae8ce40d83 100644 --- a/stepmania/src/StepsUtil.cpp +++ b/stepmania/src/StepsUtil.cpp @@ -87,7 +87,9 @@ bool StepsUtil::CompareNotesPointersByDifficulty(const Steps *pSteps1, const Ste void StepsUtil::SortNotesArrayByDifficulty( vector &arraySteps ) { - /* Sort in reverse order of priority. */ + /* Sort in reverse order of priority. Sort by description first, to get + * a predictable order for songs with no radar values (edits). */ + stable_sort( arraySteps.begin(), arraySteps.end(), CompareStepsPointersByDescription ); stable_sort( arraySteps.begin(), arraySteps.end(), CompareNotesPointersByRadarValues ); stable_sort( arraySteps.begin(), arraySteps.end(), CompareNotesPointersByMeter ); stable_sort( arraySteps.begin(), arraySteps.end(), CompareNotesPointersByDifficulty ); @@ -109,7 +111,7 @@ void StepsUtil::SortStepsByTypeAndDifficulty( vector &arraySongPointers bool StepsUtil::CompareStepsPointersByDescription(const Steps *pStep1, const Steps *pStep2) { - return pStep1->GetDifficulty() < pStep2->GetDifficulty(); + return pStep1->GetDescription().CompareNoCase( pStep2->GetDescription() ) < 0; } void StepsUtil::SortStepsByDescription( vector &arraySongPointers )