summaryrefslogtreecommitdiffstats
path: root/Objects/object.c
diff options
context:
space:
mode:
Diffstat (limited to 'Objects/object.c')
-rw-r--r--Objects/object.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/Objects/object.c b/Objects/object.c
index 9f5b6c1..ebeb0f8 100644
--- a/Objects/object.c
+++ b/Objects/object.c
@@ -8,8 +8,6 @@
#include "objimpl.h"
#include "errors.h"
-extern object *err_nomem PROTO((void)); /* XXX from modsupport.c */
-
int StopPrint; /* Flag to indicate printing must be stopped */
/* Object allocation routines used by NEWOBJ and NEWVAROBJ macros */
@@ -175,6 +173,10 @@ NEWREF(op)
DELREF(op)
object *op;
{
+ if (op->ob_refcnt < 0) {
+ fprintf(stderr, "negative refcnt\n");
+ abort();
+ }
op->_ob_next->_ob_prev = op->_ob_prev;
op->_ob_prev->_ob_next = op->_ob_next;
(*(op)->ob_type->tp_dealloc)(op);