Problem: Linear tag search is a bit slow.
Solution: Remove a vim_ftell() call. (Yegappan Lakshmanan, closes #9937)
eof = cs_fgets(st->lbuf, st->lbuf_size);
else
#endif
- {
- sinfo_p->curr_offset = vim_ftell(st->fp);
eof = vim_fgets(st->lbuf, st->lbuf_size, st->fp);
- }
} while (!eof && vim_isblankline(st->lbuf));
if (eof)
return;
}
- if (st->state == TS_STEP_FORWARD)
+ if (st->state == TS_STEP_FORWARD || st->state == TS_LINEAR)
// Seek to the same position to read the same line again
vim_ignored = vim_fseek(st->fp, search_info.curr_offset,
SEEK_SET);
call writefile(tagslines, 'Xtags')
set tags=Xtags
+ " try with binary search
+ set tagbsearch
call feedkeys(":tag inbou\<C-A>\<C-B>\"\<CR>", 'xt')
call assert_equal('"tag inboundGSV inboundGovernor inboundGovernorCounters', @:)
+ " try with linear search
+ set notagbsearch
+ call feedkeys(":tag inbou\<C-A>\<C-B>\"\<CR>", 'xt')
+ call assert_equal('"tag inboundGSV inboundGovernor inboundGovernorCounters', @:)
+ set tagbsearch&
call delete('Xtags')
set tags&
static int included_patches[] =
{ /* Add new patch number below this line */
+/**/
+ 4553,
/**/
4552,
/**/