diff options
Diffstat (limited to 'data/vim/patches/8.1.0988')
-rw-r--r-- | data/vim/patches/8.1.0988 | 129 |
1 files changed, 129 insertions, 0 deletions
diff --git a/data/vim/patches/8.1.0988 b/data/vim/patches/8.1.0988 new file mode 100644 index 000000000..1f2dc29f9 --- /dev/null +++ b/data/vim/patches/8.1.0988 @@ -0,0 +1,129 @@ +To: vim_dev@googlegroups.com +Subject: Patch 8.1.0988 +Fcc: outbox +From: Bram Moolenaar <Bram@moolenaar.net> +Mime-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit +------------ + +Patch 8.1.0988 +Problem: Deleting a location list buffer breaks location list window + functionality. +Solution: (Yegappan Lakshmanan, closes #4056) +Files: src/quickfix.c, src/testdir/test_quickfix.vim + + +*** ../vim-8.1.0987/src/quickfix.c 2019-02-10 22:58:58.976414779 +0100 +--- src/quickfix.c 2019-03-02 07:55:18.877241143 +0100 +*************** +*** 3981,3986 **** +--- 3981,4007 ---- + } + + /* ++ * Set options for the buffer in the quickfix or location list window. ++ */ ++ static void ++ qf_set_cwindow_options(void) ++ { ++ // switch off 'swapfile' ++ set_option_value((char_u *)"swf", 0L, NULL, OPT_LOCAL); ++ set_option_value((char_u *)"bt", 0L, (char_u *)"quickfix", ++ OPT_LOCAL); ++ set_option_value((char_u *)"bh", 0L, (char_u *)"hide", OPT_LOCAL); ++ RESET_BINDING(curwin); ++ #ifdef FEAT_DIFF ++ curwin->w_p_diff = FALSE; ++ #endif ++ #ifdef FEAT_FOLDING ++ set_option_value((char_u *)"fdm", 0L, (char_u *)"manual", ++ OPT_LOCAL); ++ #endif ++ } ++ ++ /* + * Open a new quickfix or location list window, load the quickfix buffer and + * set the appropriate options for the window. + * Returns FAIL if the window could not be opened. +*************** +*** 4032,4054 **** + // Create a new quickfix buffer + (void)do_ecmd(0, NULL, NULL, NULL, ECMD_ONE, ECMD_HIDE, oldwin); + +- // switch off 'swapfile' +- set_option_value((char_u *)"swf", 0L, NULL, OPT_LOCAL); +- set_option_value((char_u *)"bt", 0L, (char_u *)"quickfix", +- OPT_LOCAL); +- set_option_value((char_u *)"bh", 0L, (char_u *)"hide", OPT_LOCAL); +- RESET_BINDING(curwin); +- #ifdef FEAT_DIFF +- curwin->w_p_diff = FALSE; +- #endif +- #ifdef FEAT_FOLDING +- set_option_value((char_u *)"fdm", 0L, (char_u *)"manual", +- OPT_LOCAL); +- #endif + // save the number of the new buffer + qi->qf_bufnr = curbuf->b_fnum; + } + + // Only set the height when still in the same tab page and there is no + // window to the side. + if (curtab == prevtab && curwin->w_width == Columns) +--- 4053,4068 ---- + // Create a new quickfix buffer + (void)do_ecmd(0, NULL, NULL, NULL, ECMD_ONE, ECMD_HIDE, oldwin); + + // save the number of the new buffer + qi->qf_bufnr = curbuf->b_fnum; + } + ++ // Set the options for the quickfix buffer/window (if not already done) ++ // Do this even if the quickfix buffer was already present, as an autocmd ++ // might have previously deleted (:bdelete) the quickfix buffer. ++ if (curbuf->b_p_bt[0] != 'q') ++ qf_set_cwindow_options(); ++ + // Only set the height when still in the same tab page and there is no + // window to the side. + if (curtab == prevtab && curwin->w_width == Columns) +*** ../vim-8.1.0987/src/testdir/test_quickfix.vim 2019-02-10 22:58:58.976414779 +0100 +--- src/testdir/test_quickfix.vim 2019-03-02 07:55:18.877241143 +0100 +*************** +*** 3933,3938 **** +--- 3933,3948 ---- + call assert_match(qfbnum . ' h- "\[Location List]"', execute('ls')) + call assert_true(bufloaded(qfbnum)) + ++ " After deleting a location list buffer using ":bdelete", opening the ++ " location list window should mark the buffer as a location list buffer. ++ exe "bdelete " . qfbnum ++ lopen ++ call assert_equal("quickfix", &buftype) ++ call assert_equal(1, getwininfo(win_getid(winnr()))[0].loclist) ++ call assert_equal(wid, getloclist(0, {'filewinid' : 0}).filewinid) ++ call assert_false(&swapfile) ++ lclose ++ + " When the location list is cleared for the window, the buffer should be + " removed + call setloclist(0, [], 'f') +*** ../vim-8.1.0987/src/version.c 2019-03-02 07:15:20.217458790 +0100 +--- src/version.c 2019-03-02 07:56:37.372654522 +0100 +*************** +*** 781,782 **** +--- 781,784 ---- + { /* Add new patch number below this line */ ++ /**/ ++ 988, + /**/ + +-- +What a wonderfully exciting cough! Do you mind if I join you? + -- Douglas Adams, "The Hitchhiker's Guide to the Galaxy" + + /// 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 /// |