To: vim-dev@vim.org Subject: Patch 7.2.068 Fcc: outbox From: Bram Moolenaar Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit ------------ Patch 7.2.068 Problem: Emacs tags file lines can be too long, resulting in an error message. (James Vega) Solution: Ignore lines with errors if they are too long. Files: src/tag.c *** ../vim-7.2.067/src/tag.c Fri Jul 18 11:26:12 2008 --- src/tag.c Sat Dec 6 13:54:33 2008 *************** *** 2725,2731 **** --- 2725,2748 ---- */ p_7f = vim_strchr(lbuf, 0x7f); if (p_7f == NULL) + { + etag_fail: + if (vim_strchr(lbuf, '\n') == NULL) + { + /* Truncated line. Ignore it. */ + if (p_verbose >= 5) + { + verbose_enter(); + MSG(_("Ignoring long line in tags file")); + verbose_leave(); + } + tagp->command = lbuf; + tagp->tagname = lbuf; + tagp->tagname_end = lbuf; + return OK; + } return FAIL; + } /* Find ^A. If not found the line number is after the 0x7f */ p = vim_strchr(p_7f, Ctrl_A); *************** *** 2735,2741 **** ++p; if (!VIM_ISDIGIT(*p)) /* check for start of line number */ ! return FAIL; tagp->command = p; --- 2752,2758 ---- ++p; if (!VIM_ISDIGIT(*p)) /* check for start of line number */ ! goto etag_fail; tagp->command = p; *************** *** 2749,2755 **** /* find end of tagname */ for (p = p_7f - 1; !vim_iswordc(*p); --p) if (p == lbuf) ! return FAIL; tagp->tagname_end = p + 1; while (p >= lbuf && vim_iswordc(*p)) --p; --- 2766,2772 ---- /* find end of tagname */ for (p = p_7f - 1; !vim_iswordc(*p); --p) if (p == lbuf) ! goto etag_fail; tagp->tagname_end = p + 1; while (p >= lbuf && vim_iswordc(*p)) --p; *** ../vim-7.2.067/src/version.c Tue Dec 9 11:17:23 2008 --- src/version.c Tue Dec 9 12:05:41 2008 *************** *** 678,679 **** --- 678,681 ---- { /* Add new patch number below this line */ + /**/ + 68, /**/ -- Q: What do you call a fish without an eye? A: fsh! Q: What do you call a deer with no eyes? A: no eye deer. Q: What do you call a deer with no eyes and no legs? A: still no eye deer. /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ /// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ \\\ download, build and distribute -- http://www.A-A-P.org /// \\\ help me help AIDS victims -- http://ICCF-Holland.org ///