Reviewers: christian.plesner.hansen,

Description:
Adding comment to the fix of issue 95.

Please review this at http://codereview.chromium.org/5003

Affected files:
   M     src/array.js


Index: src/array.js
===================================================================
--- src/array.js        (revision 382)
+++ src/array.js        (working copy)
@@ -672,6 +672,8 @@
      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 @@
          i++;
        }
      }
+    // Restore the pivot element to its rightful place.
      a[to - 1] = a[high_start];
      a[high_start] = pivot;
      high_start++;



--~--~---------~--~----~------------~-------~--~----~
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
-~----------~----~----~----~------~----~------~--~---

Reply via email to