diff --git a/include/elm/data/quicksort.h b/include/elm/data/quicksort.h
index cc2a1fbb20c552b41c02901e641028028494a6a5..e3166e5cbc0e2a1c22b0986647d72a879d660623 100644
--- a/include/elm/data/quicksort.h
+++ b/include/elm/data/quicksort.h
@@ -38,8 +38,8 @@ void quicksort(A& array, const C& c = Comparator<typename A::t>()) {
 		if(L < R) {
 			piv = array[L];
 			while(L < R) {
-				while(c.doCompare(array[R], piv) >= 0 && L < R) R--; if(L < R) array[L++] = array[R];
-				while(c.doCompare(array[L], piv) <= 0 && L<R) L++; if (L < R) array[R--] = array[L];
+				while(c.compare(array[R], piv) >= 0 && L < R) R--; if(L < R) array[L++] = array[R];
+				while(c.compare(array[L], piv) <= 0 && L<R) L++; if (L < R) array[R--] = array[L];
 			}
 			array[L] = piv; beg[i+1] = L+1; end[i+1] = end[i]; end[i++] = L;
 			if(end[i] - beg[i] > end[i-1] - beg[i-1]) {