Your message dated Sat, 23 Feb 2008 17:02:44 -0500 with message-id <[EMAIL PROTECTED]> has caused the report #466789, regarding [vim] Incorrectly parses respone to "Send Device Attributes" terminal code to be marked as having been forwarded to the upstream software author(s) Bram Moolenaar <[EMAIL PROTECTED]>
(NB: If you are a system administrator and have no idea what this message is talking about, this may indicate a serious mail system misconfiguration somewhere. Please contact [EMAIL PROTECTED] immediately.) -- 466789: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=466789 Debian Bug Tracking System Contact [EMAIL PROTECTED] with problems
--- Begin Message ---Bram, In term.c's check_termcode, there is code to handle the response to "CSI>0c" (request terminal version) which is of the form "CSI>{x};{vers};{y}c". The format of {vers} isn't strictly defined but the current code assumes that the response will only be made up of digits, ';', and '.'. When this assumption is wrong (as was the case with a recent mrxvt version which contained a '+'), the parsing stops early and any unparsed characters end up being fed to Vim as if they were key presses by the user. This caused anyone using Vim inside mrxvt to start in operator-pending mode from the 'c' that Vim received. I've attached a patch which simply reduces the conditional check of the for loop that does the parsing to "i < len && tp[i] != 'c'". James -- GPG Key: 1024D/61326D40 2003-09-02 James Vega <[EMAIL PROTECTED]>Index: vim/src/term.c =================================================================== *** vim/src/term.c.orig --- vim/src/term.c *************** *** 4056,4064 **** { j = 0; extra = 0; ! for (i = 2 + (tp[0] != CSI); ! i < len && (VIM_ISDIGIT(tp[i]) ! || tp[i] == ';' || tp[i] == '.'); ++i) if (tp[i] == ';' && ++j == 1) extra = atoi((char *)tp + i + 1); if (i == len) --- 4056,4062 ---- { j = 0; extra = 0; ! for (i = 2 + (tp[0] != CSI); i < len && tp[i] != 'c'; ++i) if (tp[i] == ';' && ++j == 1) extra = atoi((char *)tp + i + 1); if (i == len)
signature.asc
Description: Digital signature
--- End Message ---

