Fix swapping of map entries in __qsort_with_data.
authorKristian Høgsberg <krh@redhat.com>
Wed, 19 Sep 2007 18:34:11 +0000 (14:34 -0400)
committerKristian Høgsberg <krh@redhat.com>
Wed, 19 Sep 2007 18:34:11 +0000 (14:34 -0400)
razor.c

diff --git a/razor.c b/razor.c
index d6a7002..f908337 100644 (file)
--- a/razor.c
+++ b/razor.c
@@ -424,6 +424,7 @@ __qsort_with_data(void *base, size_t nelem, unsigned long *map,
                        start += size;
                        mstart++;
                        p += size;
+                       mp++;
                } else if (result == 0) {
                        p += size;
                        mp++;
@@ -432,8 +433,8 @@ __qsort_with_data(void *base, size_t nelem, unsigned long *map,
                        mend--;
                        qsort_swap(p, end, size);
                        tmp = *mp;
-                       *mp = *mstart;
-                       *mstart = tmp;
+                       *mp = *mend;
+                       *mend = tmp;
                        if (end == pivot)
                                pivot = p;
                }