summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2008-12-09 11:13:06 +0000
committerBram Moolenaar <Bram@vim.org>2008-12-09 11:13:06 +0000
commit67a060e9adaeed3d80822c86c8188c314762ef88 (patch)
tree7bd5d9c2e170752a546c5147f125cdbe87af6c49
parent42ba12662e14a621aa36fc3d5d851af60116c970 (diff)
updated for version 7.2-068v7.2.068
-rw-r--r--src/tag.c21
-rw-r--r--src/version.c2
2 files changed, 21 insertions, 2 deletions
diff --git a/src/tag.c b/src/tag.c
index 1352f2047a..62533f64e8 100644
--- a/src/tag.c
+++ b/src/tag.c
@@ -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 6449e19eb0..1788511c4e 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,