0
0
mirror of https://github.com/vim/vim.git synced 2025-11-14 23:04:02 -05:00

patch 7.4.1037

Problem:    Using "q!" when there is a modified hidden buffer does not unload
            the current buffer, resulting in the need to abandon it again.
Solution:   When using "q!" unload the current buffer when needed. (Yasuhiro
            Matsumoto, Hirohito Higashi)
This commit is contained in:
Bram Moolenaar
2016-01-02 22:25:52 +01:00
parent fa03fd6c4a
commit 027387f70c
10 changed files with 40 additions and 13 deletions

View File

@@ -1636,10 +1636,13 @@ add_bufnum(bufnrs, bufnump, nr)
/*
* Return TRUE if any buffer was changed and cannot be abandoned.
* That changed buffer becomes the current buffer.
* When "unload" is true the current buffer is unloaded instead of making it
* hidden. This is used for ":q!".
*/
int
check_changed_any(hidden)
check_changed_any(hidden, unload)
int hidden; /* Only check hidden buffers */
int unload;
{
int ret = FALSE;
buf_T *buf;
@@ -1750,7 +1753,7 @@ buf_found:
/* Open the changed buffer in the current window. */
if (buf != curbuf)
set_curbuf(buf, DOBUF_GOTO);
set_curbuf(buf, unload ? DOBUF_UNLOAD : DOBUF_GOTO);
theend:
vim_free(bufnrs);