diff --git a/src/term.c b/src/term.c
index 41974de..5251d6b 100644
--- a/src/term.c
+++ b/src/term.c
@@ -153,6 +153,11 @@
 static char_u *vim_tgetstr __ARGS((char *s, char_u **pp));
 #endif /* HAVE_TGETENT */
 
+#if defined(FEAT_TERMRESPONSE)
+static int xt_index_in = 0;
+static int xt_index_out = 0;
+#endif
+
 static int  detected_8bit = FALSE;	/* detected 8-bit terminal */
 
 static struct builtin_term builtin_termcaps[] =
@@ -3259,7 +3264,7 @@
 	    may_req_termresponse();
 	    /* Immediately check for a response.  If t_Co changes, we don't
 	     * want to redraw with wrong colors first. */
-	    if (crv_status != CRV_GET)
+	    if (crv_status == CRV_SENT)
 		check_for_codes_from_term();
 	}
 #endif
@@ -3306,6 +3311,30 @@
     }
 }
 
+#if defined(UNIX) || defined(PROTO)
+/*
+ * Return TRUE when the xterm version was requested or anything else that
+ * would send an ESC sequence back to Vim.
+ * If not sent yet, prevent it from being sent soon.
+ * Used to check whether it is OK to enable checking for DEC mouse codes,
+ * which conflict with may xterm ESC sequences.
+ */
+    int
+did_request_esc_sequence()
+{
+    if (crv_status == CRV_GET)
+	crv_status = 0;
+    if (u7_status == U7_GET)
+	u7_status = 0;
+    return crv_status == CRV_SENT || u7_status == U7_SENT
+# if defined(FEAT_TERMRESPONSE)
+	|| xt_index_out > xt_index_in
+# endif
+	;
+}
+#endif
+
+
 #if defined(FEAT_TERMRESPONSE) || defined(PROTO)
 /*
  * Request version string (for xterm) when needed.
@@ -3319,6 +3348,8 @@
  * Insert mode.
  * On Unix only do it when both output and input are a tty (avoid writing
  * request to terminal while reading from a file).
+ * Do not do this when a mouse is being detected that starts with the same ESC
+ * sequence as the termresponse.
  * The result is caught in check_termcode().
  */
     void
@@ -3332,6 +3363,7 @@
 # ifdef UNIX
 	    && isatty(1)
 	    && isatty(read_cmd_fd)
+	    && !xterm_conflict_mouse
 # endif
 	    && *T_CRV != NUL)
     {
@@ -5714,9 +5746,6 @@
  * termcap codes from the terminal itself.
  * We get them one by one to avoid a very long response string.
  */
-static int xt_index_in = 0;
-static int xt_index_out = 0;
-
     static void
 req_codes_from_term()
 {
