diff options
author | Bram Moolenaar <bram@vim.org> | 2013-06-27 22:21:24 +0200 |
---|---|---|
committer | Bram Moolenaar <bram@vim.org> | 2013-06-27 22:21:24 +0200 |
commit | 9354a8f753f373b132305feb7bfc401525e147a3 (patch) | |
tree | 38e3fc3af0020647999f45dbccac02903b26d6a9 | |
parent | b0b7028bc89bf4d5f7025e1e149d0246028966e4 (diff) | |
download | vim-7-3-1253.tar.gz |
Problem: Still undo problem after using CTRL-R = setline(). (Hirohito
Higashi)
Solution: Set the ins_need_undo flag.
-rw-r--r-- | src/edit.c | 8 | ||||
-rw-r--r-- | src/version.c | 2 |
2 files changed, 7 insertions, 3 deletions
@@ -8134,15 +8134,17 @@ ins_reg() # ifdef USE_IM_CONTROL int im_on = im_get_status(); # endif + /* Sync undo, so the effect of e.g., setline() can be undone. */ + u_sync(TRUE); + ins_need_undo = TRUE; + regname = get_expr_register(); # ifdef USE_IM_CONTROL /* Restore the Input Method. */ if (im_on) im_set_active(TRUE); # endif - if (regname == '=') - /* sync undo, so the effect of e.g., setline() can be undone */ - u_sync(TRUE); + Insstart = curwin->w_cursor; } if (regname == NUL || !valid_yank_reg(regname, FALSE)) { diff --git a/src/version.c b/src/version.c index 83487c7c..dbd95425 100644 --- 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 */ /**/ + 1253, +/**/ 1252, /**/ 1251, |