From: Miss Islington (bot) <31488909+miss-islington@users.noreply.github.com> Date: Wed, 2 Jan 2019 02:25:23 +0000 (-0800) Subject: closes bpo-35623: Fix integer overflow when sorting large lists (GH-11380) X-Git-Tag: v3.7.3rc1~179 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=a5955b0895aa011b0beff1ceb6539b2ff8888425;p=thirdparty%2FPython%2Fcpython.git closes bpo-35623: Fix integer overflow when sorting large lists (GH-11380) There is already a `Py_ssize_t i` defined at function scope that is used for similar loops. By removing the local `int i` declaration that `i` is used, which has the appropriate type. (cherry picked from commit f8b534477a2a51d85ea1663530f685f805f2b247) Co-authored-by: sth --- diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-12-31-02-37-20.bpo-35623.24AQhY.rst b/Misc/NEWS.d/next/Core and Builtins/2018-12-31-02-37-20.bpo-35623.24AQhY.rst new file mode 100644 index 000000000000..6e3df4dc5d4e --- /dev/null +++ b/Misc/NEWS.d/next/Core and Builtins/2018-12-31-02-37-20.bpo-35623.24AQhY.rst @@ -0,0 +1 @@ +Fix a crash when sorting very long lists. Patch by Stephan Hohe. diff --git a/Objects/listobject.c b/Objects/listobject.c index c8ffeff09368..de73b8bf80fd 100644 --- a/Objects/listobject.c +++ b/Objects/listobject.c @@ -2232,7 +2232,6 @@ list_sort_impl(PyListObject *self, PyObject *keyfunc, int reverse) int ints_are_bounded = 1; /* Prove that assumption by checking every key. */ - int i; for (i=0; i < saved_ob_size; i++) { if (keys_are_in_tuples &&