From 3ae3315f44c5a6f462844e51c830593f007ef881 Mon Sep 17 00:00:00 2001 From: "Michael W. Hudson" Date: Thu, 3 Oct 2002 09:50:47 +0000 Subject: [PATCH] Clamp code objects' tp_compare result to [-1, 1]. Bugfix candidate. --- Python/compile.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Python/compile.c b/Python/compile.c index 26c56f46bd3..d916751ef7d 100644 --- a/Python/compile.c +++ b/Python/compile.c @@ -196,11 +196,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);