diff options
author | Bram Moolenaar <Bram@vim.org> | 2017-04-07 19:50:12 +0200 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2017-04-07 19:50:12 +0200 |
commit | d4863aa99e0527e9505c79cbeafc68a6832200bf (patch) | |
tree | 2ea60d3eb3f29982b5188d86c7df63665d278d72 /src/fileio.c | |
parent | 52604f2454e5369f861d3ce34764f74a0999c773 (diff) |
patch 8.0.0548: saving the redo buffer only works one timev8.0.0548
Problem: Saving the redo buffer only works one time, resulting in the "."
command not working well for a function call inside another
function call. (Ingo Karkat)
Solution: Save the redo buffer at every user function call. (closes #1619)
Diffstat (limited to 'src/fileio.c')
-rw-r--r-- | src/fileio.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/fileio.c b/src/fileio.c index e74392075b..b41df3e7b8 100644 --- a/src/fileio.c +++ b/src/fileio.c @@ -9316,6 +9316,7 @@ apply_autocmds_group( proftime_T wait_time; #endif int did_save_redobuff = FALSE; + save_redo_T save_redo; /* * Quickly return if there are no autocommands for this event or @@ -9521,7 +9522,7 @@ apply_autocmds_group( if (!ins_compl_active()) #endif { - saveRedobuff(); + saveRedobuff(&save_redo); did_save_redobuff = TRUE; } did_filetype = keep_filetype; @@ -9624,7 +9625,7 @@ apply_autocmds_group( { restore_search_patterns(); if (did_save_redobuff) - restoreRedobuff(); + restoreRedobuff(&save_redo); did_filetype = FALSE; while (au_pending_free_buf != NULL) { |