vim-patch:7.4.2248

Problem:    When cancelling the :ptjump prompt a preview window is opened for
            a following command.
Solution:   Reset g_do_tagpreview. (Hirohito Higashi)  Add a test.  Avoid that
            the test runner gets stuck in trying to close a window.

358308dd99
This commit is contained in:
lonerover
2017-03-14 17:10:45 +08:00
parent 700e13da82
commit b65d5ff11b
4 changed files with 29 additions and 3 deletions

View File

@@ -919,7 +919,8 @@ end_do_tag:
/* Only store the new index when using the tagstack and it's valid. */
if (use_tagstack && tagstackidx <= curwin->w_tagstacklen)
curwin->w_tagstackidx = tagstackidx;
postponed_split = 0; /* don't split next time */
postponed_split = 0; // don't split next time
g_do_tagpreview = 0; // don't do tag preview next time
return jumped_to_tag;
}

View File

@@ -95,8 +95,17 @@ function RunTheTest(test)
endif
" Close any extra windows and make the current one not modified.
while winnr('$') > 1
while 1
let wincount = winnr('$')
if wincount == 1
break
endif
bwipe!
if wincount == winnr('$')
" Did not manage to close a window.
only!
break
endif
endwhile
set nomodified
endfunc

View File

@@ -7,4 +7,20 @@ func Test_ptag_with_notagstack()
set tagstack&vim
endfunc
func Test_cancel_ptjump()
set tags=Xtags
call writefile(["!_TAG_FILE_ENCODING\tutf-8\t//",
\ "word\tfile1\tcmd1",
\ "word\tfile2\tcmd2"],
\ 'Xtags')
only!
call feedkeys(":ptjump word\<CR>\<CR>", "xt")
help
call assert_equal(2, winnr('$'))
call delete('Xtags')
quit
endfunc
" vim: shiftwidth=2 sts=2 expandtab

View File

@@ -193,7 +193,7 @@ static int included_patches[] = {
2251,
// 2250,
2249,
// 2248,
2248,
// 2247 NA
// 2246,
// 2245,