From: Michael W. Hudson Date: Mon, 7 Oct 2002 11:30:07 +0000 (+0000) Subject: Backport my checkin of revision 2.264 of Python/compile.c: X-Git-Tag: v2.2.2b1~18 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=51e80dfd0201df9faff34774dece3ae92550657d;p=thirdparty%2FPython%2Fcpython.git Backport my checkin of revision 2.264 of Python/compile.c: Clamp code objects' tp_compare result to [-1, 1]. Bugfix candidate. --- diff --git a/Python/compile.c b/Python/compile.c index cdd8b1b3905b..f3d9a20cf89f 100644 --- a/Python/compile.c +++ b/Python/compile.c @@ -133,11 +133,11 @@ code_compare(PyCodeObject *co, PyCodeObject *cp) cmp = PyObject_Compare(co->co_name, cp->co_name); if (cmp) return cmp; cmp = co->co_argcount - cp->co_argcount; - if (cmp) return cmp; + if (cmp) return (cmp<0)?-1:1; cmp = co->co_nlocals - cp->co_nlocals; - if (cmp) return cmp; + if (cmp) return (cmp<0)?-1:1; cmp = co->co_flags - cp->co_flags; - if (cmp) return cmp; + if (cmp) return (cmp<0)?-1:1; cmp = PyObject_Compare(co->co_code, cp->co_code); if (cmp) return cmp; cmp = PyObject_Compare(co->co_consts, cp->co_consts);