# HG changeset patch # User Bram Moolenaar # Date 1363195843 -3600 # Node ID 4905e038b1057e133d0e72c48cf88580cdedf26b # Parent 3d2addd4639682b29c6c79ab28b09e946957a8d6 updated for version 7.3.857 Problem: The QuitPre autocommand event does not trigger for :qa and :wq. Solution: Trigger the event. (Tatsuro Fujii) diff --git a/src/ex_docmd.c b/src/ex_docmd.c --- a/src/ex_docmd.c +++ b/src/ex_docmd.c @@ -6526,7 +6526,7 @@ ex_quit(eap) } #ifdef FEAT_AUTOCMD apply_autocmds(EVENT_QUITPRE, NULL, NULL, FALSE, curbuf); - /* Refuse to quick when locked or when the buffer in the last window is + /* Refuse to quit when locked or when the buffer in the last window is * being closed (can only happen in autocommands). */ if (curbuf_locked() || (curbuf->b_nwindows == 1 && curbuf->b_closing)) return; @@ -6600,7 +6600,10 @@ ex_quit_all(eap) return; } #ifdef FEAT_AUTOCMD - if (curbuf_locked()) + apply_autocmds(EVENT_QUITPRE, NULL, NULL, FALSE, curbuf); + /* Refuse to quit when locked or when the buffer in the last window is + * being closed (can only happen in autocommands). */ + if (curbuf_locked() || (curbuf->b_nwindows == 1 && curbuf->b_closing)) return; #endif @@ -6936,7 +6939,10 @@ ex_exit(eap) return; } #ifdef FEAT_AUTOCMD - if (curbuf_locked()) + apply_autocmds(EVENT_QUITPRE, NULL, NULL, FALSE, curbuf); + /* Refuse to quit when locked or when the buffer in the last window is + * being closed (can only happen in autocommands). */ + if (curbuf_locked() || (curbuf->b_nwindows == 1 && curbuf->b_closing)) return; #endif diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -729,6 +729,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 857, +/**/ 856, /**/ 855,