Adding comment to the fix of issue 95.

Review URL: http://codereview.chromium.org/5003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@383 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
This commit is contained in:
olehougaard 2008-09-26 10:25:14 +00:00
parent acffb377a8
commit 0b02000de4

View File

@ -672,6 +672,8 @@ function ArraySort(comparefn) {
if (from >= to - 1) return;
var pivot_index = $floor($random() * (to - from)) + from;
var pivot = a[pivot_index];
// Issue 95: Keep the pivot element out of the comparisons to avoid
// infinite recursion if comparefn(pivot, pivot) != 0.
a[pivot_index] = a[to - 1];
a[to - 1] = pivot;
var low_end = from; // Upper bound of the elements lower than pivot.
@ -692,6 +694,7 @@ function ArraySort(comparefn) {
i++;
}
}
// Restore the pivot element to its rightful place.
a[to - 1] = a[high_start];
a[high_start] = pivot;
high_start++;