diff --git a/modules/juce_core/containers/juce_ElementComparator.h b/modules/juce_core/containers/juce_ElementComparator.h index 6e0f24c2e3..8ce16acd56 100644 --- a/modules/juce_core/containers/juce_ElementComparator.h +++ b/modules/juce_core/containers/juce_ElementComparator.h @@ -82,12 +82,17 @@ static void sortArray (ElementComparator& comparator, int lastElement, const bool retainOrderOfEquivalentItems) { - SortFunctionConverter converter (comparator); + jassert (firstElement >= 0); - if (retainOrderOfEquivalentItems) - std::stable_sort (array + firstElement, array + lastElement + 1, converter); - else - std::sort (array + firstElement, array + lastElement + 1, converter); + if (lastElement > firstElement) + { + SortFunctionConverter converter (comparator); + + if (retainOrderOfEquivalentItems) + std::stable_sort (array + firstElement, array + lastElement + 1, converter); + else + std::sort (array + firstElement, array + lastElement + 1, converter); + } }