diff --git a/src/ex_cmds2.c b/src/ex_cmds2.c
index 74dae92..3efa8ca 100644
--- a/src/ex_cmds2.c
+++ b/src/ex_cmds2.c
@@ -1183,6 +1183,7 @@
 /*
  * Call timers that are due.
  * Return the time in msec until the next timer is due.
+ * Returns -1 if there are no pending timers.
  */
     long
 check_due_timer(void)
@@ -1197,6 +1198,10 @@
 # ifdef WIN3264
     LARGE_INTEGER   fr;
 
+    /* Don't run any timers while exiting. */
+    if (exiting)
+	return next_due;
+
     QueryPerformanceFrequency(&fr);
 # endif
     profile_start(&now);
diff --git a/src/if_python.c b/src/if_python.c
index 6b2ce56..a280459 100644
--- a/src/if_python.c
+++ b/src/if_python.c
@@ -779,6 +779,7 @@
 
 static int initialised = 0;
 #define PYINITIALISED initialised
+static int python_end_called = FALSE;
 
 #define DESTRUCTOR_FINISH(self) self->ob_type->tp_free((PyObject*)self);
 
@@ -878,6 +879,7 @@
     if (recurse != 0)
 	return;
 
+    python_end_called = TRUE;
     ++recurse;
 
 #ifdef DYNAMIC_PYTHON
@@ -1040,6 +1042,8 @@
     }
     ++recursive;
 #endif
+    if (python_end_called)
+	return;
 
 #if defined(MACOS) && !defined(MACOS_X_UNIX)
     GetPort(&oldPort);
@@ -1568,7 +1572,7 @@
 	    (rangeinitializer) init_range_eval,
 	    (runner) run_eval,
 	    (void *) rettv);
-    switch(rettv->v_type)
+    switch (rettv->v_type)
     {
 	case VAR_DICT: ++rettv->vval.v_dict->dv_refcount; break;
 	case VAR_LIST: ++rettv->vval.v_list->lv_refcount; break;
diff --git a/src/if_python3.c b/src/if_python3.c
index d68ab85..6949b02 100644
--- a/src/if_python3.c
+++ b/src/if_python3.c
@@ -733,8 +733,8 @@
 #endif /* DYNAMIC_PYTHON3 */
 
 static int py3initialised = 0;
-
 #define PYINITIALISED py3initialised
+static int python_end_called = FALSE;
 
 #define DESTRUCTOR_FINISH(self) Py_TYPE(self)->tp_free((PyObject*)self)
 
@@ -817,6 +817,7 @@
     if (recurse != 0)
 	return;
 
+    python_end_called = TRUE;
     ++recurse;
 
 #ifdef DYNAMIC_PYTHON3
@@ -938,6 +939,9 @@
     PyObject		*cmdbytes;
     PyGILState_STATE	pygilstate;
 
+    if (python_end_called)
+	goto theend;
+
 #if defined(MACOS) && !defined(MACOS_X_UNIX)
     GetPort(&oldPort);
     /* Check if the Python library is available */
diff --git a/src/version.c b/src/version.c
index bd09de5..bd4c3e1 100644
--- a/src/version.c
+++ b/src/version.c
@@ -765,6 +765,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    698,
+/**/
     697,
 /**/
     696,
