diff --git a/src/edit.c b/src/edit.c
index 65f2bb1..d4951d9 100644
--- a/src/edit.c
+++ b/src/edit.c
@@ -4219,6 +4219,7 @@
     win_T	*curwin_save;
     buf_T	*curbuf_save;
     typval_T	rettv;
+    int		save_State = State;
 
     funcname = (type == CTRL_X_FUNCTION) ? curbuf->b_p_cfu : curbuf->b_p_ofu;
     if (*funcname == NUL)
@@ -4272,6 +4273,9 @@
 	ins_compl_add_dict(matchdict);
 
 theend:
+    // Restore State, it might have been changed.
+    State = save_State;
+
     if (matchdict != NULL)
 	dict_unref(matchdict);
     if (matchlist != NULL)
@@ -5549,6 +5553,7 @@
 	    pos_T	pos;
 	    win_T	*curwin_save;
 	    buf_T	*curbuf_save;
+	    int		save_State = State;
 
 	    /* Call 'completefunc' or 'omnifunc' and get pattern length as a
 	     * string */
@@ -5572,6 +5577,8 @@
 	    curwin_save = curwin;
 	    curbuf_save = curbuf;
 	    col = call_func_retnr(funcname, 2, args);
+
+	    State = save_State;
 	    if (curwin_save != curwin || curbuf_save != curbuf)
 	    {
 		EMSG(_(e_complwin));
@@ -10730,6 +10737,7 @@
 {
     char_u	*res;
     char_u	buf[MB_MAXBYTES + 1];
+    int		save_State = State;
 
     /* Return quickly when there is nothing to do. */
     if (!has_insertcharpre())
@@ -10762,6 +10770,9 @@
     set_vim_var_string(VV_CHAR, NULL, -1);  /* clear v:char */
     --textlock;
 
+    // Restore the State, it may have been changed.
+    State = save_State;
+
     return res;
 }
 #endif
diff --git a/src/testdir/runtest.vim b/src/testdir/runtest.vim
index 89c1e3a..a8b43aa 100644
--- a/src/testdir/runtest.vim
+++ b/src/testdir/runtest.vim
@@ -26,7 +26,7 @@
 " It will be called after each Test_ function.
 "
 " When debugging a test it can be useful to add messages to v:errors:
-" 	call add(v:errors, "this happened")
+"	call add(v:errors, "this happened")
 
 
 " Without the +eval feature we can't run these tests, bail out.
@@ -149,6 +149,10 @@
     endtry
   endif
 
+  " In case 'insertmode' was set and something went wrong, make sure it is
+  " reset to avoid trouble with anything else.
+  set noinsertmode
+
   if exists("*TearDown")
     try
       call TearDown()
diff --git a/src/version.c b/src/version.c
index 790c4f7..3f6b5ec 100644
--- a/src/version.c
+++ b/src/version.c
@@ -800,6 +800,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    696,
+/**/
     695,
 /**/
     694,
