summaryrefslogtreecommitdiffstats
path: root/source/ap/vim/patches/7.3.336
diff options
context:
space:
mode:
author Patrick J Volkerding <volkerdi@slackware.com>2013-11-04 17:08:47 +0000
committer Eric Hameleers <alien@slackware.com>2018-05-31 22:57:36 +0200
commit76fc4757ac91ac7947a01fb7b53dddf9a78a01d1 (patch)
tree9b98e6e193c7870cb27ac861394c1c4592850922 /source/ap/vim/patches/7.3.336
parent9664bee729d487bcc0a0bc35859f8e13d5421c75 (diff)
downloadcurrent-76fc4757ac91ac7947a01fb7b53dddf9a78a01d1.tar.gz
current-76fc4757ac91ac7947a01fb7b53dddf9a78a01d1.tar.xz
Slackware 14.1slackware-14.1
Mon Nov 4 17:08:47 UTC 2013 Slackware 14.1 x86_64 stable is released! It's been another interesting release cycle here at Slackware bringing new features like support for UEFI machines, updated compilers and development tools, the switch from MySQL to MariaDB, and many more improvements throughout the system. Thanks to the team, the upstream developers, the dedicated Slackware community, and everyone else who pitched in to help make this release a reality. The ISOs are off to be replicated, a 6 CD-ROM 32-bit set and a dual-sided 32-bit/64-bit x86/x86_64 DVD. Please consider supporting the Slackware project by picking up a copy from store.slackware.com. We're taking pre-orders now, and offer a discount if you sign up for a subscription. Have fun! :-)
Diffstat (limited to 'source/ap/vim/patches/7.3.336')
-rw-r--r--source/ap/vim/patches/7.3.3361100
1 files changed, 0 insertions, 1100 deletions
diff --git a/source/ap/vim/patches/7.3.336 b/source/ap/vim/patches/7.3.336
deleted file mode 100644
index 902f578c3..000000000
--- a/source/ap/vim/patches/7.3.336
+++ /dev/null
@@ -1,1100 +0,0 @@
-To: vim_dev@googlegroups.com
-Subject: Patch 7.3.336
-Fcc: outbox
-From: Bram Moolenaar <Bram@moolenaar.net>
-Mime-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-------------
-
-Patch 7.3.336
-Problem: When a tags file specifies an encoding different from 'enc' it
- may hang and using a pattern doesn't work.
-Solution: Convert the whole line. Continue reading the header after the
- SORT tag. Add test83. (Yukihiro Nakadaira)
-Files: src/tag.c, src/testdir/Make_amiga.mak, src/testdir/Make_dos.mak,
- src/testdir/Make_ming.mak, src/testdir/Make_os2.mak,
- src/testdir/Make_vms.mms, src/testdir/Makefile,
- src/testdir/test83-tags2, src/testdir/test83-tags3,
- src/testdir/test83.in, src/testdir/test83.ok
-
-
-*** ../vim-7.3.335/src/tag.c 2011-04-11 21:35:03.000000000 +0200
---- src/tag.c 2011-10-12 19:51:04.000000000 +0200
-***************
-*** 1277,1282 ****
---- 1277,1283 ----
- {
- FILE *fp;
- char_u *lbuf; /* line buffer */
-+ int lbuf_size = LSIZE; /* length of lbuf */
- char_u *tag_fname; /* name of tag file */
- tagname_T tn; /* info for get_tagfname() */
- int first_file; /* trying first tag file */
-***************
-*** 1291,1296 ****
---- 1292,1298 ----
- char_u *s;
- int i;
- #ifdef FEAT_TAG_BINS
-+ int tag_file_sorted = NUL; /* !_TAG_FILE_SORTED value */
- struct tag_search_info /* Binary search file offsets */
- {
- off_t low_offset; /* offset for first char of first line that
-***************
-*** 1360,1372 ****
- char_u *saved_pat = NULL; /* copy of pat[] */
- #endif
-
-- /* Use two sets of variables for the pattern: "orgpat" holds the values
-- * for the original pattern and "convpat" converted from 'encoding' to
-- * encoding of the tags file. "pats" point to either one of these. */
-- pat_T *pats;
- pat_T orgpat; /* holds unconverted pattern info */
- #ifdef FEAT_MBYTE
-- pat_T convpat; /* holds converted pattern info */
- vimconv_T vimconv;
- #endif
-
---- 1362,1369 ----
-***************
-*** 1390,1396 ****
-
- help_save = curbuf->b_help;
- orgpat.pat = pat;
-- pats = &orgpat;
- #ifdef FEAT_MBYTE
- vimconv.vc_type = CONV_NONE;
- #endif
---- 1387,1392 ----
-***************
-*** 1398,1404 ****
- /*
- * Allocate memory for the buffers that are used
- */
-! lbuf = alloc(LSIZE);
- tag_fname = alloc(MAXPATHL + 1);
- #ifdef FEAT_EMACS_TAGS
- ebuf = alloc(LSIZE);
---- 1394,1400 ----
- /*
- * Allocate memory for the buffers that are used
- */
-! lbuf = alloc(lbuf_size);
- tag_fname = alloc(MAXPATHL + 1);
- #ifdef FEAT_EMACS_TAGS
- ebuf = alloc(LSIZE);
-***************
-*** 1424,1453 ****
- if (help_only) /* want tags from help file */
- curbuf->b_help = TRUE; /* will be restored later */
-
-! pats->len = (int)STRLEN(pat);
- #ifdef FEAT_MULTI_LANG
- if (curbuf->b_help)
- {
- /* When "@ab" is specified use only the "ab" language, otherwise
- * search all languages. */
-! if (pats->len > 3 && pat[pats->len - 3] == '@'
-! && ASCII_ISALPHA(pat[pats->len - 2])
-! && ASCII_ISALPHA(pat[pats->len - 1]))
- {
-! saved_pat = vim_strnsave(pat, pats->len - 3);
- if (saved_pat != NULL)
- {
-! help_lang_find = &pat[pats->len - 2];
-! pats->pat = saved_pat;
-! pats->len -= 3;
- }
- }
- }
- #endif
-! if (p_tl != 0 && pats->len > p_tl) /* adjust for 'taglength' */
-! pats->len = p_tl;
-
-! prepare_pats(pats, has_re);
-
- #ifdef FEAT_TAG_BINS
- /* This is only to avoid a compiler warning for using search_info
---- 1420,1449 ----
- if (help_only) /* want tags from help file */
- curbuf->b_help = TRUE; /* will be restored later */
-
-! orgpat.len = (int)STRLEN(pat);
- #ifdef FEAT_MULTI_LANG
- if (curbuf->b_help)
- {
- /* When "@ab" is specified use only the "ab" language, otherwise
- * search all languages. */
-! if (orgpat.len > 3 && pat[orgpat.len - 3] == '@'
-! && ASCII_ISALPHA(pat[orgpat.len - 2])
-! && ASCII_ISALPHA(pat[orgpat.len - 1]))
- {
-! saved_pat = vim_strnsave(pat, orgpat.len - 3);
- if (saved_pat != NULL)
- {
-! help_lang_find = &pat[orgpat.len - 2];
-! orgpat.pat = saved_pat;
-! orgpat.len -= 3;
- }
- }
- }
- #endif
-! if (p_tl != 0 && orgpat.len > p_tl) /* adjust for 'taglength' */
-! orgpat.len = p_tl;
-
-! prepare_pats(&orgpat, has_re);
-
- #ifdef FEAT_TAG_BINS
- /* This is only to avoid a compiler warning for using search_info
-***************
-*** 1466,1478 ****
- * Only ignore case when TAG_NOIC not used or 'ignorecase' set.
- */
- #ifdef FEAT_TAG_BINS
-! pats->regmatch.rm_ic = ((p_ic || !noic)
-! && (findall || pats->headlen == 0 || !p_tbs));
- for (round = 1; round <= 2; ++round)
- {
-! linear = (pats->headlen == 0 || !p_tbs || round == 2);
- #else
-! pats->regmatch.rm_ic = (p_ic || !noic);
- #endif
-
- /*
---- 1462,1474 ----
- * Only ignore case when TAG_NOIC not used or 'ignorecase' set.
- */
- #ifdef FEAT_TAG_BINS
-! orgpat.regmatch.rm_ic = ((p_ic || !noic)
-! && (findall || orgpat.headlen == 0 || !p_tbs));
- for (round = 1; round <= 2; ++round)
- {
-! linear = (orgpat.headlen == 0 || !p_tbs || round == 2);
- #else
-! orgpat.regmatch.rm_ic = (p_ic || !noic);
- #endif
-
- /*
-***************
-*** 1701,1706 ****
---- 1697,1732 ----
- }
- line_read_in:
-
-+ #ifdef FEAT_MBYTE
-+ if (vimconv.vc_type != CONV_NONE)
-+ {
-+ char_u *conv_line;
-+ int len;
-+
-+ /* Convert every line. Converting the pattern from 'enc' to
-+ * the tags file encoding doesn't work, because characters are
-+ * not recognized. */
-+ conv_line = string_convert(&vimconv, lbuf, NULL);
-+ if (conv_line != NULL)
-+ {
-+ /* Copy or swap lbuf and conv_line. */
-+ len = (int)STRLEN(conv_line) + 1;
-+ if (len > lbuf_size)
-+ {
-+ vim_free(lbuf);
-+ lbuf = conv_line;
-+ lbuf_size = len;
-+ }
-+ else
-+ {
-+ STRCPY(lbuf, conv_line);
-+ vim_free(conv_line);
-+ }
-+ }
-+ }
-+ #endif
-+
-+
- #ifdef FEAT_EMACS_TAGS
- /*
- * Emacs tags line with CTRL-L: New file name on next line.
-***************
-*** 1770,1775 ****
---- 1796,1828 ----
- */
- if (state == TS_START)
- {
-+ if (STRNCMP(lbuf, "!_TAG_", 6) <= 0)
-+ {
-+ /*
-+ * Read header line.
-+ */
-+ #ifdef FEAT_TAG_BINS
-+ if (STRNCMP(lbuf, "!_TAG_FILE_SORTED\t", 18) == 0)
-+ tag_file_sorted = lbuf[18];
-+ #endif
-+ #ifdef FEAT_MBYTE
-+ if (STRNCMP(lbuf, "!_TAG_FILE_ENCODING\t", 20) == 0)
-+ {
-+ /* Prepare to convert every line from the specified
-+ * encoding to 'encoding'. */
-+ for (p = lbuf + 20; *p > ' ' && *p < 127; ++p)
-+ ;
-+ *p = NUL;
-+ convert_setup(&vimconv, lbuf + 20, p_enc);
-+ }
-+ #endif
-+
-+ /* Read the next line. Unrecognized flags are ignored. */
-+ continue;
-+ }
-+
-+ /* Headers ends. */
-+
- #ifdef FEAT_TAG_BINS
- /*
- * When there is no tag head, or ignoring case, need to do a
-***************
-*** 1786,1809 ****
- if (linear)
- # endif
- state = TS_LINEAR;
-! else if (STRNCMP(lbuf, "!_TAG_", 6) > 0)
- state = TS_BINARY;
-! else if (STRNCMP(lbuf, "!_TAG_FILE_SORTED\t", 18) == 0)
-! {
-! /* Check sorted flag */
-! if (lbuf[18] == '1')
- state = TS_BINARY;
-! else if (lbuf[18] == '2')
-! {
-! state = TS_BINARY;
-! sortic = TRUE;
-! pats->regmatch.rm_ic = (p_ic || !noic);
-! }
-! else
-! state = TS_LINEAR;
- }
-
-! if (state == TS_BINARY && pats->regmatch.rm_ic && !sortic)
- {
- /* binary search won't work for ignoring case, use linear
- * search. */
---- 1839,1858 ----
- if (linear)
- # endif
- state = TS_LINEAR;
-! else if (tag_file_sorted == NUL)
- state = TS_BINARY;
-! else if (tag_file_sorted == '1')
- state = TS_BINARY;
-! else if (tag_file_sorted == '2')
-! {
-! state = TS_BINARY;
-! sortic = TRUE;
-! orgpat.regmatch.rm_ic = (p_ic || !noic);
- }
-+ else
-+ state = TS_LINEAR;
-
-! if (state == TS_BINARY && orgpat.regmatch.rm_ic && !sortic)
- {
- /* binary search won't work for ignoring case, use linear
- * search. */
-***************
-*** 1843,1882 ****
- #endif
- }
-
-- #ifdef FEAT_MBYTE
-- if (lbuf[0] == '!' && pats == &orgpat
-- && STRNCMP(lbuf, "!_TAG_FILE_ENCODING\t", 20) == 0)
-- {
-- /* Convert the search pattern from 'encoding' to the
-- * specified encoding. */
-- for (p = lbuf + 20; *p > ' ' && *p < 127; ++p)
-- ;
-- *p = NUL;
-- convert_setup(&vimconv, p_enc, lbuf + 20);
-- if (vimconv.vc_type != CONV_NONE)
-- {
-- convpat.pat = string_convert(&vimconv, pats->pat, NULL);
-- if (convpat.pat != NULL)
-- {
-- pats = &convpat;
-- pats->len = (int)STRLEN(pats->pat);
-- prepare_pats(pats, has_re);
-- pats->regmatch.rm_ic = orgpat.regmatch.rm_ic;
-- }
-- }
--
-- /* Prepare for converting a match the other way around. */
-- convert_setup(&vimconv, lbuf + 20, p_enc);
-- continue;
-- }
-- #endif
--
- /*
- * Figure out where the different strings are in this line.
- * For "normal" tags: Do a quick check if the tag matches.
- * This speeds up tag searching a lot!
- */
-! if (pats->headlen
- #ifdef FEAT_EMACS_TAGS
- && !is_etag
- #endif
---- 1892,1903 ----
- #endif
- }
-
- /*
- * Figure out where the different strings are in this line.
- * For "normal" tags: Do a quick check if the tag matches.
- * This speeds up tag searching a lot!
- */
-! if (orgpat.headlen
- #ifdef FEAT_EMACS_TAGS
- && !is_etag
- #endif
-***************
-*** 1933,1941 ****
- cmplen = (int)(tagp.tagname_end - tagp.tagname);
- if (p_tl != 0 && cmplen > p_tl) /* adjust for 'taglength' */
- cmplen = p_tl;
-! if (has_re && pats->headlen < cmplen)
-! cmplen = pats->headlen;
-! else if (state == TS_LINEAR && pats->headlen != cmplen)
- continue;
-
- #ifdef FEAT_TAG_BINS
---- 1954,1962 ----
- cmplen = (int)(tagp.tagname_end - tagp.tagname);
- if (p_tl != 0 && cmplen > p_tl) /* adjust for 'taglength' */
- cmplen = p_tl;
-! if (has_re && orgpat.headlen < cmplen)
-! cmplen = orgpat.headlen;
-! else if (state == TS_LINEAR && orgpat.headlen != cmplen)
- continue;
-
- #ifdef FEAT_TAG_BINS
-***************
-*** 1954,1963 ****
- * Compare the current tag with the searched tag.
- */
- if (sortic)
-! tagcmp = tag_strnicmp(tagp.tagname, pats->head,
- (size_t)cmplen);
- else
-! tagcmp = STRNCMP(tagp.tagname, pats->head, cmplen);
-
- /*
- * A match with a shorter tag means to search forward.
---- 1975,1984 ----
- * Compare the current tag with the searched tag.
- */
- if (sortic)
-! tagcmp = tag_strnicmp(tagp.tagname, orgpat.head,
- (size_t)cmplen);
- else
-! tagcmp = STRNCMP(tagp.tagname, orgpat.head, cmplen);
-
- /*
- * A match with a shorter tag means to search forward.
-***************
-*** 1965,1973 ****
- */
- if (tagcmp == 0)
- {
-! if (cmplen < pats->headlen)
- tagcmp = -1;
-! else if (cmplen > pats->headlen)
- tagcmp = 1;
- }
-
---- 1986,1994 ----
- */
- if (tagcmp == 0)
- {
-! if (cmplen < orgpat.headlen)
- tagcmp = -1;
-! else if (cmplen > orgpat.headlen)
- tagcmp = 1;
- }
-
-***************
-*** 2011,2017 ****
- }
- else if (state == TS_SKIP_BACK)
- {
-! if (MB_STRNICMP(tagp.tagname, pats->head, cmplen) != 0)
- state = TS_STEP_FORWARD;
- else
- /* Have to skip back more. Restore the curr_offset
---- 2032,2038 ----
- }
- else if (state == TS_SKIP_BACK)
- {
-! if (MB_STRNICMP(tagp.tagname, orgpat.head, cmplen) != 0)
- state = TS_STEP_FORWARD;
- else
- /* Have to skip back more. Restore the curr_offset
-***************
-*** 2021,2027 ****
- }
- else if (state == TS_STEP_FORWARD)
- {
-! if (MB_STRNICMP(tagp.tagname, pats->head, cmplen) != 0)
- {
- if ((off_t)ftell(fp) > search_info.match_offset)
- break; /* past last match */
---- 2042,2048 ----
- }
- else if (state == TS_STEP_FORWARD)
- {
-! if (MB_STRNICMP(tagp.tagname, orgpat.head, cmplen) != 0)
- {
- if ((off_t)ftell(fp) > search_info.match_offset)
- break; /* past last match */
-***************
-*** 2032,2038 ****
- else
- #endif
- /* skip this match if it can't match */
-! if (MB_STRNICMP(tagp.tagname, pats->head, cmplen) != 0)
- continue;
-
- /*
---- 2053,2059 ----
- else
- #endif
- /* skip this match if it can't match */
-! if (MB_STRNICMP(tagp.tagname, orgpat.head, cmplen) != 0)
- continue;
-
- /*
-***************
-*** 2083,2123 ****
- if (p_tl != 0 && cmplen > p_tl) /* adjust for 'taglength' */
- cmplen = p_tl;
- /* if tag length does not match, don't try comparing */
-! if (pats->len != cmplen)
- match = FALSE;
- else
- {
-! if (pats->regmatch.rm_ic)
- {
-! match = (MB_STRNICMP(tagp.tagname, pats->pat, cmplen) == 0);
- if (match)
-! match_no_ic = (STRNCMP(tagp.tagname, pats->pat,
- cmplen) == 0);
- }
- else
-! match = (STRNCMP(tagp.tagname, pats->pat, cmplen) == 0);
- }
-
- /*
- * Has a regexp: Also find tags matching regexp.
- */
- match_re = FALSE;
-! if (!match && pats->regmatch.regprog != NULL)
- {
- int cc;
-
- cc = *tagp.tagname_end;
- *tagp.tagname_end = NUL;
-! match = vim_regexec(&pats->regmatch, tagp.tagname, (colnr_T)0);
- if (match)
- {
-! matchoff = (int)(pats->regmatch.startp[0] - tagp.tagname);
-! if (pats->regmatch.rm_ic)
- {
-! pats->regmatch.rm_ic = FALSE;
-! match_no_ic = vim_regexec(&pats->regmatch, tagp.tagname,
- (colnr_T)0);
-! pats->regmatch.rm_ic = TRUE;
- }
- }
- *tagp.tagname_end = cc;
---- 2104,2144 ----
- if (p_tl != 0 && cmplen > p_tl) /* adjust for 'taglength' */
- cmplen = p_tl;
- /* if tag length does not match, don't try comparing */
-! if (orgpat.len != cmplen)
- match = FALSE;
- else
- {
-! if (orgpat.regmatch.rm_ic)
- {
-! match = (MB_STRNICMP(tagp.tagname, orgpat.pat, cmplen) == 0);
- if (match)
-! match_no_ic = (STRNCMP(tagp.tagname, orgpat.pat,
- cmplen) == 0);
- }
- else
-! match = (STRNCMP(tagp.tagname, orgpat.pat, cmplen) == 0);
- }
-
- /*
- * Has a regexp: Also find tags matching regexp.
- */
- match_re = FALSE;
-! if (!match && orgpat.regmatch.regprog != NULL)
- {
- int cc;
-
- cc = *tagp.tagname_end;
- *tagp.tagname_end = NUL;
-! match = vim_regexec(&orgpat.regmatch, tagp.tagname, (colnr_T)0);
- if (match)
- {
-! matchoff = (int)(orgpat.regmatch.startp[0] - tagp.tagname);
-! if (orgpat.regmatch.rm_ic)
- {
-! orgpat.regmatch.rm_ic = FALSE;
-! match_no_ic = vim_regexec(&orgpat.regmatch, tagp.tagname,
- (colnr_T)0);
-! orgpat.regmatch.rm_ic = TRUE;
- }
- }
- *tagp.tagname_end = cc;
-***************
-*** 2174,2180 ****
- else
- mtt = MT_GL_OTH;
- }
-! if (pats->regmatch.rm_ic && !match_no_ic)
- mtt += MT_IC_OFF;
- if (match_re)
- mtt += MT_RE_OFF;
---- 2195,2201 ----
- else
- mtt = MT_GL_OTH;
- }
-! if (orgpat.regmatch.rm_ic && !match_no_ic)
- mtt += MT_IC_OFF;
- if (match_re)
- mtt += MT_RE_OFF;
-***************
-*** 2187,2221 ****
- */
- if (ga_grow(&ga_match[mtt], 1) == OK)
- {
-- #ifdef FEAT_MBYTE
-- char_u *conv_line = NULL;
-- char_u *lbuf_line = lbuf;
--
-- if (vimconv.vc_type != CONV_NONE)
-- {
-- /* Convert the tag line from the encoding of the tags
-- * file to 'encoding'. Then parse the line again. */
-- conv_line = string_convert(&vimconv, lbuf, NULL);
-- if (conv_line != NULL)
-- {
-- if (parse_tag_line(conv_line,
-- #ifdef FEAT_EMACS_TAGS
-- is_etag,
-- #endif
-- &tagp) == OK)
-- lbuf_line = conv_line;
-- else
-- /* doesn't work, go back to unconverted line. */
-- (void)parse_tag_line(lbuf,
-- #ifdef FEAT_EMACS_TAGS
-- is_etag,
-- #endif
-- &tagp);
-- }
-- }
-- #else
-- # define lbuf_line lbuf
-- #endif
- if (help_only)
- {
- #ifdef FEAT_MULTI_LANG
---- 2208,2213 ----
-***************
-*** 2307,2313 ****
- * without Emacs tags: <mtt><tag_fname><NUL><lbuf>
- */
- len = (int)STRLEN(tag_fname)
-! + (int)STRLEN(lbuf_line) + 3;
- #ifdef FEAT_EMACS_TAGS
- if (is_etag)
- len += (int)STRLEN(ebuf) + 1;
---- 2299,2305 ----
- * without Emacs tags: <mtt><tag_fname><NUL><lbuf>
- */
- len = (int)STRLEN(tag_fname)
-! + (int)STRLEN(lbuf) + 3;
- #ifdef FEAT_EMACS_TAGS
- if (is_etag)
- len += (int)STRLEN(ebuf) + 1;
-***************
-*** 2337,2343 ****
- else
- *s++ = NUL;
- #endif
-! STRCPY(s, lbuf_line);
- }
- }
-
---- 2329,2335 ----
- else
- *s++ = NUL;
- #endif
-! STRCPY(s, lbuf);
- }
- }
-
-***************
-*** 2373,2382 ****
- else
- vim_free(mfp);
- }
-- #ifdef FEAT_MBYTE
-- /* Note: this makes the values in "tagp" invalid! */
-- vim_free(conv_line);
-- #endif
- }
- else /* Out of memory! Just forget about the rest. */
- {
---- 2365,2370 ----
-***************
-*** 2415,2433 ****
- }
- #endif
- #ifdef FEAT_MBYTE
-- if (pats == &convpat)
-- {
-- /* Go back from converted pattern to original pattern. */
-- vim_free(pats->pat);
-- vim_free(pats->regmatch.regprog);
-- orgpat.regmatch.rm_ic = pats->regmatch.rm_ic;
-- pats = &orgpat;
-- }
- if (vimconv.vc_type != CONV_NONE)
- convert_setup(&vimconv, NULL, NULL);
- #endif
-
- #ifdef FEAT_TAG_BINS
- if (sort_error)
- {
- EMSG2(_("E432: Tags file not sorted: %s"), tag_fname);
---- 2403,2414 ----
- }
- #endif
- #ifdef FEAT_MBYTE
- if (vimconv.vc_type != CONV_NONE)
- convert_setup(&vimconv, NULL, NULL);
- #endif
-
- #ifdef FEAT_TAG_BINS
-+ tag_file_sorted = NUL;
- if (sort_error)
- {
- EMSG2(_("E432: Tags file not sorted: %s"), tag_fname);
-***************
-*** 2461,2473 ****
- #ifdef FEAT_TAG_BINS
- /* stop searching when already did a linear search, or when TAG_NOIC
- * used, and 'ignorecase' not set or already did case-ignore search */
-! if (stop_searching || linear || (!p_ic && noic) || pats->regmatch.rm_ic)
- break;
- # ifdef FEAT_CSCOPE
- if (use_cscope)
- break;
- # endif
-! pats->regmatch.rm_ic = TRUE; /* try another time while ignoring case */
- }
- #endif
-
---- 2442,2454 ----
- #ifdef FEAT_TAG_BINS
- /* stop searching when already did a linear search, or when TAG_NOIC
- * used, and 'ignorecase' not set or already did case-ignore search */
-! if (stop_searching || linear || (!p_ic && noic) || orgpat.regmatch.rm_ic)
- break;
- # ifdef FEAT_CSCOPE
- if (use_cscope)
- break;
- # endif
-! orgpat.regmatch.rm_ic = TRUE; /* try another time while ignoring case */
- }
- #endif
-
-***************
-*** 2480,2486 ****
-
- findtag_end:
- vim_free(lbuf);
-! vim_free(pats->regmatch.regprog);
- vim_free(tag_fname);
- #ifdef FEAT_EMACS_TAGS
- vim_free(ebuf);
---- 2461,2467 ----
-
- findtag_end:
- vim_free(lbuf);
-! vim_free(orgpat.regmatch.regprog);
- vim_free(tag_fname);
- #ifdef FEAT_EMACS_TAGS
- vim_free(ebuf);
-*** ../vim-7.3.335/src/testdir/Make_amiga.mak 2011-07-15 21:16:54.000000000 +0200
---- src/testdir/Make_amiga.mak 2011-10-12 19:21:00.000000000 +0200
-***************
-*** 29,35 ****
- test66.out test67.out test68.out test69.out test70.out \
- test71.out test72.out test73.out test74.out test75.out \
- test76.out test77.out test78.out test79.out test80.out \
-! test81.out test82.out
-
- .SUFFIXES: .in .out
-
---- 29,35 ----
- test66.out test67.out test68.out test69.out test70.out \
- test71.out test72.out test73.out test74.out test75.out \
- test76.out test77.out test78.out test79.out test80.out \
-! test81.out test82.out test83.out
-
- .SUFFIXES: .in .out
-
-***************
-*** 131,133 ****
---- 131,134 ----
- test80.out: test80.in
- test81.out: test81.in
- test82.out: test82.in
-+ test83.out: test83.in
-*** ../vim-7.3.335/src/testdir/Make_dos.mak 2011-07-15 21:16:54.000000000 +0200
---- src/testdir/Make_dos.mak 2011-10-12 17:39:03.000000000 +0200
-***************
-*** 29,35 ****
- test42.out test52.out test65.out test66.out test67.out \
- test68.out test69.out test71.out test72.out test73.out \
- test74.out test75.out test76.out test77.out test78.out \
-! test79.out test80.out test81.out test82.out
-
- SCRIPTS32 = test50.out test70.out
-
---- 29,35 ----
- test42.out test52.out test65.out test66.out test67.out \
- test68.out test69.out test71.out test72.out test73.out \
- test74.out test75.out test76.out test77.out test78.out \
-! test79.out test80.out test81.out test82.out test83.out
-
- SCRIPTS32 = test50.out test70.out
-
-*** ../vim-7.3.335/src/testdir/Make_ming.mak 2011-07-15 21:16:54.000000000 +0200
---- src/testdir/Make_ming.mak 2011-10-12 17:39:03.000000000 +0200
-***************
-*** 49,55 ****
- test42.out test52.out test65.out test66.out test67.out \
- test68.out test69.out test71.out test72.out test73.out \
- test74.out test75.out test76.out test77.out test78.out \
-! test79.out test80.out test81.out test82.out
-
- SCRIPTS32 = test50.out test70.out
-
---- 49,55 ----
- test42.out test52.out test65.out test66.out test67.out \
- test68.out test69.out test71.out test72.out test73.out \
- test74.out test75.out test76.out test77.out test78.out \
-! test79.out test80.out test81.out test82.out test83.out
-
- SCRIPTS32 = test50.out test70.out
-
-*** ../vim-7.3.335/src/testdir/Make_os2.mak 2011-07-15 21:16:54.000000000 +0200
---- src/testdir/Make_os2.mak 2011-10-12 17:39:03.000000000 +0200
-***************
-*** 29,35 ****
- test66.out test67.out test68.out test69.out test70.out \
- test71.out test72.out test73.out test74.out test75.out \
- test76.out test77.out test78.out test79.out test80.out \
-! test81.out test82.out
-
- .SUFFIXES: .in .out
-
---- 29,35 ----
- test66.out test67.out test68.out test69.out test70.out \
- test71.out test72.out test73.out test74.out test75.out \
- test76.out test77.out test78.out test79.out test80.out \
-! test81.out test82.out test83.out
-
- .SUFFIXES: .in .out
-
-*** ../vim-7.3.335/src/testdir/Make_vms.mms 2011-07-15 21:16:54.000000000 +0200
---- src/testdir/Make_vms.mms 2011-10-12 17:39:03.000000000 +0200
-***************
-*** 76,82 ****
- test66.out test67.out test68.out test69.out \
- test71.out test72.out test74.out test75.out test76.out \
- test77.out test78.out test79.out test80.out test81.out \
-! test82.out
-
- # Known problems:
- # Test 30: a problem around mac format - unknown reason
---- 76,82 ----
- test66.out test67.out test68.out test69.out \
- test71.out test72.out test74.out test75.out test76.out \
- test77.out test78.out test79.out test80.out test81.out \
-! test82.out test83.out
-
- # Known problems:
- # Test 30: a problem around mac format - unknown reason
-*** ../vim-7.3.335/src/testdir/Makefile 2011-07-15 21:16:54.000000000 +0200
---- src/testdir/Makefile 2011-10-12 17:39:03.000000000 +0200
-***************
-*** 26,32 ****
- test64.out test65.out test66.out test67.out test68.out \
- test69.out test70.out test71.out test72.out test73.out \
- test74.out test75.out test76.out test77.out test78.out \
-! test79.out test80.out test81.out test82.out
-
- SCRIPTS_GUI = test16.out
-
---- 26,32 ----
- test64.out test65.out test66.out test67.out test68.out \
- test69.out test70.out test71.out test72.out test73.out \
- test74.out test75.out test76.out test77.out test78.out \
-! test79.out test80.out test81.out test82.out test83.out
-
- SCRIPTS_GUI = test16.out
-
-***************
-*** 72,78 ****
- fi \
- else echo $* NO OUTPUT >>test.log; \
- fi"
-! -rm -rf X* test.ok viminfo
-
- test49.out: test49.vim
-
---- 72,78 ----
- fi \
- else echo $* NO OUTPUT >>test.log; \
- fi"
-! # -rm -rf X* test.ok viminfo
-
- test49.out: test49.vim
-
-*** ../vim-7.3.335/src/testdir/test83-tags2 2011-10-12 19:49:38.000000000 +0200
---- src/testdir/test83-tags2 2011-10-12 19:34:15.000000000 +0200
-***************
-*** 0 ****
---- 1,2 ----
-+ !_TAG_FILE_ENCODING cp932 //
-+ ‚`‚a‚b Xtags2.txt /‚`‚a‚b
-*** ../vim-7.3.335/src/testdir/test83-tags3 2011-10-12 19:49:38.000000000 +0200
---- src/testdir/test83-tags3 2011-10-12 19:35:42.000000000 +0200
-***************
-*** 0 ****
---- 1,102 ----
-+ !_TAG_FILE_SORTED 1 //
-+ !_TAG_FILE_ENCODING cp932 //
-+ abc1 Xtags3.txt /‚`‚a‚b
-+ abc2 Xtags3.txt /‚`‚a‚b
-+ abc3 Xtags3.txt /‚`‚a‚b
-+ abc4 Xtags3.txt /‚`‚a‚b
-+ abc5 Xtags3.txt /‚`‚a‚b
-+ abc6 Xtags3.txt /‚`‚a‚b
-+ abc7 Xtags3.txt /‚`‚a‚b
-+ abc8 Xtags3.txt /‚`‚a‚b
-+ abc9 Xtags3.txt /‚`‚a‚b
-+ abc10 Xtags3.txt /‚`‚a‚b
-+ abc11 Xtags3.txt /‚`‚a‚b
-+ abc12 Xtags3.txt /‚`‚a‚b
-+ abc13 Xtags3.txt /‚`‚a‚b
-+ abc14 Xtags3.txt /‚`‚a‚b
-+ abc15 Xtags3.txt /‚`‚a‚b
-+ abc16 Xtags3.txt /‚`‚a‚b
-+ abc17 Xtags3.txt /‚`‚a‚b
-+ abc18 Xtags3.txt /‚`‚a‚b
-+ abc19 Xtags3.txt /‚`‚a‚b
-+ abc20 Xtags3.txt /‚`‚a‚b
-+ abc21 Xtags3.txt /‚`‚a‚b
-+ abc22 Xtags3.txt /‚`‚a‚b
-+ abc23 Xtags3.txt /‚`‚a‚b
-+ abc24 Xtags3.txt /‚`‚a‚b
-+ abc25 Xtags3.txt /‚`‚a‚b
-+ abc26 Xtags3.txt /‚`‚a‚b
-+ abc27 Xtags3.txt /‚`‚a‚b
-+ abc28 Xtags3.txt /‚`‚a‚b
-+ abc29 Xtags3.txt /‚`‚a‚b
-+ abc30 Xtags3.txt /‚`‚a‚b
-+ abc31 Xtags3.txt /‚`‚a‚b
-+ abc32 Xtags3.txt /‚`‚a‚b
-+ abc33 Xtags3.txt /‚`‚a‚b
-+ abc34 Xtags3.txt /‚`‚a‚b
-+ abc35 Xtags3.txt /‚`‚a‚b
-+ abc36 Xtags3.txt /‚`‚a‚b
-+ abc37 Xtags3.txt /‚`‚a‚b
-+ abc38 Xtags3.txt /‚`‚a‚b
-+ abc39 Xtags3.txt /‚`‚a‚b
-+ abc40 Xtags3.txt /‚`‚a‚b
-+ abc41 Xtags3.txt /‚`‚a‚b
-+ abc42 Xtags3.txt /‚`‚a‚b
-+ abc43 Xtags3.txt /‚`‚a‚b
-+ abc44 Xtags3.txt /‚`‚a‚b
-+ abc45 Xtags3.txt /‚`‚a‚b
-+ abc46 Xtags3.txt /‚`‚a‚b
-+ abc47 Xtags3.txt /‚`‚a‚b
-+ abc48 Xtags3.txt /‚`‚a‚b
-+ abc49 Xtags3.txt /‚`‚a‚b
-+ abc50 Xtags3.txt /‚`‚a‚b
-+ abc51 Xtags3.txt /‚`‚a‚b
-+ abc52 Xtags3.txt /‚`‚a‚b
-+ abc53 Xtags3.txt /‚`‚a‚b
-+ abc54 Xtags3.txt /‚`‚a‚b
-+ abc55 Xtags3.txt /‚`‚a‚b
-+ abc56 Xtags3.txt /‚`‚a‚b
-+ abc57 Xtags3.txt /‚`‚a‚b
-+ abc58 Xtags3.txt /‚`‚a‚b
-+ abc59 Xtags3.txt /‚`‚a‚b
-+ abc60 Xtags3.txt /‚`‚a‚b
-+ abc61 Xtags3.txt /‚`‚a‚b
-+ abc62 Xtags3.txt /‚`‚a‚b
-+ abc63 Xtags3.txt /‚`‚a‚b
-+ abc64 Xtags3.txt /‚`‚a‚b
-+ abc65 Xtags3.txt /‚`‚a‚b
-+ abc66 Xtags3.txt /‚`‚a‚b
-+ abc67 Xtags3.txt /‚`‚a‚b
-+ abc68 Xtags3.txt /‚`‚a‚b
-+ abc69 Xtags3.txt /‚`‚a‚b
-+ abc70 Xtags3.txt /‚`‚a‚b
-+ abc71 Xtags3.txt /‚`‚a‚b
-+ abc72 Xtags3.txt /‚`‚a‚b
-+ abc73 Xtags3.txt /‚`‚a‚b
-+ abc74 Xtags3.txt /‚`‚a‚b
-+ abc75 Xtags3.txt /‚`‚a‚b
-+ abc76 Xtags3.txt /‚`‚a‚b
-+ abc77 Xtags3.txt /‚`‚a‚b
-+ abc78 Xtags3.txt /‚`‚a‚b
-+ abc79 Xtags3.txt /‚`‚a‚b
-+ abc80 Xtags3.txt /‚`‚a‚b
-+ abc81 Xtags3.txt /‚`‚a‚b
-+ abc82 Xtags3.txt /‚`‚a‚b
-+ abc83 Xtags3.txt /‚`‚a‚b
-+ abc84 Xtags3.txt /‚`‚a‚b
-+ abc85 Xtags3.txt /‚`‚a‚b
-+ abc86 Xtags3.txt /‚`‚a‚b
-+ abc87 Xtags3.txt /‚`‚a‚b
-+ abc88 Xtags3.txt /‚`‚a‚b
-+ abc89 Xtags3.txt /‚`‚a‚b
-+ abc90 Xtags3.txt /‚`‚a‚b
-+ abc91 Xtags3.txt /‚`‚a‚b
-+ abc92 Xtags3.txt /‚`‚a‚b
-+ abc93 Xtags3.txt /‚`‚a‚b
-+ abc94 Xtags3.txt /‚`‚a‚b
-+ abc95 Xtags3.txt /‚`‚a‚b
-+ abc96 Xtags3.txt /‚`‚a‚b
-+ abc97 Xtags3.txt /‚`‚a‚b
-+ abc98 Xtags3.txt /‚`‚a‚b
-+ abc99 Xtags3.txt /‚`‚a‚b
-+ abc100 Xtags3.txt /‚`‚a‚b
-*** ../vim-7.3.335/src/testdir/test83.in 2011-10-12 19:49:38.000000000 +0200
---- src/testdir/test83.in 2011-10-12 19:40:47.000000000 +0200
-***************
-*** 0 ****
---- 1,76 ----
-+ Tests for tag search with !_TAG_FILE_ENCODING.
-+
-+ STARTTEST
-+ :so mbyte.vim
-+ :if !has('iconv')
-+ : e! test.ok
-+ : w! test.out
-+ : qa!
-+ :endif
-+ :set enc=utf8
-+
-+ :/^text for tags1$/,/^text for tags1$/+1w! Xtags1.txt
-+ :/^text for tags2$/,/^text for tags2$/+1w! Xtags2.txt
-+ :/^text for tags3$/,/^text for tags3$/+1w! Xtags3.txt
-+ :/^tags1$/+1,/^tags1-end$/-1w! Xtags1
-+
-+ ggdG
-+
-+ :call setline('.', 'Results of test83')
-+
-+ :" case1:
-+ :new
-+ :set tags=Xtags1
-+ :let v:errmsg = ''
-+ :tag abcdefghijklmnopqrs
-+ :if v:errmsg =~ 'E426:' || getline('.') != 'abcdefghijklmnopqrs'
-+ : close
-+ : put ='case1: failed'
-+ :else
-+ : close
-+ : put ='case1: ok'
-+ :endif
-+
-+ :" case2:
-+ :new
-+ :set tags=test83-tags2
-+ :let v:errmsg = ''
-+ :tag /.BC
-+ :if v:errmsg =~ 'E426:' || getline('.') != 'ABC'
-+ : close
-+ : put ='case2: failed'
-+ :else
-+ : close
-+ : put ='case2: ok'
-+ :endif
-+
-+ :" case3:
-+ :new
-+ :set tags=test83-tags3
-+ :let v:errmsg = ''
-+ :tag abc50
-+ :if v:errmsg =~ 'E426:' || getline('.') != 'ABC'
-+ : close
-+ : put ='case3: failed'
-+ :else
-+ : close
-+ : put ='case3: ok'
-+ :endif
-+ :close
-+
-+ :wq! test.out
-+ ENDTEST
-+
-+ text for tags1
-+ abcdefghijklmnopqrs
-+
-+ text for tags2
-+ ABC
-+
-+ text for tags3
-+ ABC
-+
-+ tags1
-+ !_TAG_FILE_ENCODING utf-8 //
-+ abcdefghijklmnopqrs Xtags1.txt /abcdefghijklmnopqrs
-+ tags1-end
-*** ../vim-7.3.335/src/testdir/test83.ok 2011-10-12 19:49:38.000000000 +0200
---- src/testdir/test83.ok 2011-10-12 17:39:03.000000000 +0200
-***************
-*** 0 ****
---- 1,4 ----
-+ Results of test83
-+ case1: ok
-+ case2: ok
-+ case3: ok
-*** ../vim-7.3.335/src/version.c 2011-10-12 16:57:07.000000000 +0200
---- src/version.c 2011-10-12 19:45:46.000000000 +0200
-***************
-*** 711,712 ****
---- 711,714 ----
- { /* Add new patch number below this line */
-+ /**/
-+ 336,
- /**/
-
-
---
-hundred-and-one symptoms of being an internet addict:
-62. If your doorbell rings, you think that new mail has arrived. And then
- you're disappointed that it's only someone at the door.
-
- /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\
-/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
-\\\ an exciting new programming language -- http://www.Zimbu.org ///
- \\\ help me help AIDS victims -- http://ICCF-Holland.org ///