diff options
author | Bram Moolenaar <Bram@vim.org> | 2008-12-09 11:13:06 +0000 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2008-12-09 11:13:06 +0000 |
commit | 67a060e9adaeed3d80822c86c8188c314762ef88 (patch) | |
tree | 7bd5d9c2e170752a546c5147f125cdbe87af6c49 | |
parent | 42ba12662e14a621aa36fc3d5d851af60116c970 (diff) | |
download | vim-git-67a060e9adaeed3d80822c86c8188c314762ef88.tar.gz |
updated for version 7.2-068v7.2.068
-rw-r--r-- | src/tag.c | 21 | ||||
-rw-r--r-- | src/version.c | 2 |
2 files changed, 21 insertions, 2 deletions
@@ -2725,7 +2725,24 @@ parse_tag_line(lbuf, */ 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,7 +2752,7 @@ parse_tag_line(lbuf, ++p; if (!VIM_ISDIGIT(*p)) /* check for start of line number */ - return FAIL; + goto etag_fail; tagp->command = p; @@ -2749,7 +2766,7 @@ parse_tag_line(lbuf, /* find end of tagname */ for (p = p_7f - 1; !vim_iswordc(*p); --p) if (p == lbuf) - return FAIL; + goto etag_fail; tagp->tagname_end = p + 1; while (p >= lbuf && vim_iswordc(*p)) --p; diff --git a/src/version.c b/src/version.c index 6449e19eb..1788511c4 100644 --- a/src/version.c +++ b/src/version.c @@ -677,6 +677,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 68, +/**/ 67, /**/ 66, |