keep exitfunc alive while calling it

This commit is contained in:
Guido van Rossum 1995-10-07 19:14:01 +00:00
parent f7f79ac0c8
commit 1c45ca310b

View file

@ -605,12 +605,14 @@ cleanup()
if (exitfunc) { if (exitfunc) {
object *res; object *res;
INCREF(exitfunc);
sysset("exitfunc", (object *)NULL); sysset("exitfunc", (object *)NULL);
res = call_object(exitfunc, (object *)NULL); res = call_object(exitfunc, (object *)NULL);
if (res == NULL) { if (res == NULL) {
fprintf(stderr, "Error in sys.exitfunc:\n"); fprintf(stderr, "Error in sys.exitfunc:\n");
print_error(); print_error();
} }
DECREF(exitfunc);
} }
flushline(); flushline();