diff --git a/Python/pythonrun.c b/Python/pythonrun.c
index db21daf..d8bc646 100644
--- a/Python/pythonrun.c
+++ b/Python/pythonrun.c
@@ -291,6 +291,32 @@
 extern void dump_counts(FILE*);
 #endif
 
+/* Flush stdout and stderr */
+
+void
+flush_std_files()
+{
+	PyObject *fout = PySys_GetObject("stdout");
+	PyObject *ferr = PySys_GetObject("stderr");
+	PyObject *tmp;
+
+	if (fout != NULL) {
+		tmp = PyObject_CallMethod(fout, "flush", "");
+		if (tmp == NULL)
+			PyErr_Clear();
+		else
+			Py_DECREF(tmp);
+	}
+
+	if (ferr != NULL) {
+		tmp = PyObject_CallMethod(ferr, "flush", "");
+		if (tmp == NULL)
+			PyErr_Clear();
+		else
+			Py_DECREF(tmp);
+	}
+}
+
 /* Undo the effect of Py_Initialize().
 
    Beware: if multiple interpreter and/or thread states exist, these
@@ -326,6 +352,9 @@
 	call_py_exitfuncs();
 	initialized = 0;
 
+	/* Flush stdout+stderr */
+	flush_std_files();
+
 	/* Get current thread state and interpreter pointer */
 	tstate = PyThreadState_GET();
 	interp = tstate->interp;
@@ -361,6 +390,9 @@
 	/* Destroy all modules */
 	PyImport_Cleanup();
 
+	/* Flush stdout+stderr (again, in case more was printed) */
+	flush_std_files();
+
 	/* Collect final garbage.  This disposes of cycles created by
 	 * new-style class definitions, for example.
 	 * XXX This is disabled because it caused too many problems.  If
