summaryrefslogtreecommitdiffstats
path: root/Objects
diff options
context:
space:
mode:
Diffstat (limited to 'Objects')
-rw-r--r--Objects/classobject.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/Objects/classobject.c b/Objects/classobject.c
index a395801..7d8a8e9 100644
--- a/Objects/classobject.c
+++ b/Objects/classobject.c
@@ -524,14 +524,14 @@ instance_compare(inst, other)
int outcome;
result = instancebinop(inst, other, "__cmp__", "__rcmp__");
if (result == NULL) {
- /* no __cmp__ or __rcmp__ methods, so use addresses */
+ error:
err_clear();
- return inst < other ? -1 : (inst > other ? 1 : 0);
+ return (inst < other) ? -1 : 1;
}
outcome = getintvalue(result);
DECREF(result);
if (outcome == -1 && err_occurred())
- return -2;
+ goto error;
if (outcome < 0)
return -1;
else if (outcome > 0)