From b5d2d19c6742846c632e74eace96def91fd86ebb Mon Sep 17 00:00:00 2001 From: edyfox Date: Thu, 28 Feb 2008 05:40:29 +0000 Subject: [PATCH] Merged from the latest developing branch. git-svn-id: https://vim.svn.sourceforge.net/svnroot/vim/trunk@927 2a77ed30-b011-0410-a7ad-c7884a0aa172 --- src/term.c | 10 ++++++---- src/version.c | 2 ++ 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/term.c b/src/term.c index 7d148cdf..f1c71803 100644 --- a/src/term.c +++ b/src/term.c @@ -4050,15 +4050,17 @@ check_termcode(max_offset, buf, buflen) { /* Check for xterm version string: "[>{x};{vers};{y}c". Also * eat other possible responses to t_RV, rxvt returns - * "[?1;2c". Also accept CSI instead of [. */ + * "[?1;2c". Also accept CSI instead of [. + * mrxvt has been reported to have "+" in the version. Assume + * the escape sequence ends with a letter or one of "{|}~". */ if (*T_CRV != NUL && ((tp[0] == ESC && tp[1] == '[' && len >= 3) || (tp[0] == CSI && len >= 2))) { j = 0; extra = 0; - for (i = 2 + (tp[0] != CSI); - i < len && (VIM_ISDIGIT(tp[i]) - || tp[i] == ';' || tp[i] == '.'); ++i) + for (i = 2 + (tp[0] != CSI); i < len + && !(tp[i] >= '{' && tp[i] <= '~') + && !ASCII_ISALPHA(tp[i]); ++i) if (tp[i] == ';' && ++j == 1) extra = atoi((char *)tp + i + 1); if (i == len) diff --git a/src/version.c b/src/version.c index d3a86e45..82689be0 100644 --- a/src/version.c +++ b/src/version.c @@ -667,6 +667,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 266, +/**/ 265, /**/ 264, -- 2.11.4.GIT