From: Benjamin Peterson Date: Mon, 23 Aug 2010 19:35:39 +0000 (+0000) Subject: reorder and save a comparison X-Git-Tag: v3.2a2~156 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=05380645546208b67df8a9ac7ee509dffb1f77e7;p=python reorder and save a comparison --- diff --git a/Objects/listobject.c b/Objects/listobject.c index 0dab7843af..88478f3db0 100644 --- a/Objects/listobject.c +++ b/Objects/listobject.c @@ -1934,17 +1934,17 @@ listsort(PyListObject *self, PyObject *args, PyObject *kwds) } } - /* Reverse sort stability achieved by initially reversing the list, - applying a stable forward sort, then reversing the final result. */ - if (reverse && saved_ob_size > 1) - reverse_slice(saved_ob_item, saved_ob_item + saved_ob_size); - merge_init(&ms); nremaining = saved_ob_size; if (nremaining < 2) goto succeed; + /* Reverse sort stability achieved by initially reversing the list, + applying a stable forward sort, then reversing the final result. */ + if (reverse) + reverse_slice(saved_ob_item, saved_ob_item + saved_ob_size); + /* March over the array once, left to right, finding natural runs, * and extending short natural runs to minrun elements. */