diff --git a/Python/pythonrun.c b/Python/pythonrun.c
index 5358ee5..35b1815 100644
--- a/Python/pythonrun.c
+++ b/Python/pythonrun.c
@@ -369,6 +369,25 @@
 goaway(sts)
 	int sts;
 {
+	object *exitfunc = sysget("exitfunc");
+
+	if (exitfunc) {
+		object *arg;
+		object *res;
+		sysset("exitfunc", (object *)NULL);
+		arg = newtupleobject(0);
+		if (arg == NULL)
+			res = NULL;
+		else {
+			res = call_object(exitfunc, arg);
+			DECREF(arg);
+		}
+		if (res == NULL) {
+			fprintf(stderr, "Error in sys.exitfunc:\n");
+			print_error();
+		}
+	}
+
 	flushline();
 
 #ifdef USE_THREAD
@@ -411,7 +430,7 @@
 #ifdef TRACE_REFS
 /* Ask a yes/no question */
 
-static int
+int
 askyesno(prompt)
 	char *prompt;
 {
