diff options
Diffstat (limited to 'source/ap/vim/patches/7.3.395')
-rw-r--r-- | source/ap/vim/patches/7.3.395 | 115 |
1 files changed, 115 insertions, 0 deletions
diff --git a/source/ap/vim/patches/7.3.395 b/source/ap/vim/patches/7.3.395 new file mode 100644 index 00000000..cb268939 --- /dev/null +++ b/source/ap/vim/patches/7.3.395 @@ -0,0 +1,115 @@ +To: vim_dev@googlegroups.com +Subject: Patch 7.3.395 +Fcc: outbox +From: Bram Moolenaar <Bram@moolenaar.net> +Mime-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit +------------ + +Patch 7.3.395 (after 7.3.251) +Problem: "dv?bar" in the last line deletes too much and breaks undo. +Solution: Only adjust the cursor position when it's after the last line of + the buffer. Add a test. (Christian Brabandt) +Files: src/ops.c, src/testdir/test43.in, src/testdir/test43.ok + + +*** ../vim-7.3.394/src/ops.c 2011-09-21 17:33:49.000000000 +0200 +--- src/ops.c 2012-01-10 13:28:05.000000000 +0100 +*************** +*** 1961,1968 **** + /* Special case: gH<Del> deletes the last line. */ + del_lines(1L, FALSE); + curwin->w_cursor = curpos; /* restore curwin->w_cursor */ +! if (curwin->w_cursor.lnum > 1) +! --curwin->w_cursor.lnum; + } + else + { +--- 1962,1969 ---- + /* Special case: gH<Del> deletes the last line. */ + del_lines(1L, FALSE); + curwin->w_cursor = curpos; /* restore curwin->w_cursor */ +! if (curwin->w_cursor.lnum > curbuf->b_ml.ml_line_count) +! curwin->w_cursor.lnum = curbuf->b_ml.ml_line_count; + } + else + { +*************** +*** 4434,4440 **** + #endif + + /* +! * implementation of the format operator 'gq' + */ + void + op_format(oap, keep_cursor) +--- 4435,4441 ---- + #endif + + /* +! * Implementation of the format operator 'gq'. + */ + void + op_format(oap, keep_cursor) +*** ../vim-7.3.394/src/testdir/test43.in 2010-08-15 21:57:29.000000000 +0200 +--- src/testdir/test43.in 2012-01-10 13:41:13.000000000 +0100 +*************** +*** 13,19 **** + x:set magic + /\v(a)(b)\2\1\1/e + x/\V[ab]\(\[xy]\)\1 +! x:?^1?,$w! test.out + :qa! + ENDTEST + +--- 13,23 ---- + x:set magic + /\v(a)(b)\2\1\1/e + x/\V[ab]\(\[xy]\)\1 +! x:$ +! :set undolevels=100 +! dv?bar? +! Yup:" +! :?^1?,$w! test.out + :qa! + ENDTEST + +*************** +*** 25,27 **** +--- 29,33 ---- + 6 x ^aa$ x + 7 (a)(b) abbaa + 8 axx [ab]xx ++ 9 foobar ++ +*** ../vim-7.3.394/src/testdir/test43.ok 2010-08-15 21:57:29.000000000 +0200 +--- src/testdir/test43.ok 2012-01-10 13:42:39.000000000 +0100 +*************** +*** 6,8 **** +--- 6,11 ---- + 6 x aa$ x + 7 (a)(b) abba + 8 axx ab]xx ++ 9 foobar ++ 9 foo ++ +*** ../vim-7.3.394/src/version.c 2012-01-10 12:42:05.000000000 +0100 +--- src/version.c 2012-01-10 13:30:40.000000000 +0100 +*************** +*** 716,717 **** +--- 716,719 ---- + { /* Add new patch number below this line */ ++ /**/ ++ 395, + /**/ + +-- +The Law, in its majestic equality, forbids the rich, as well as the +poor, to sleep under the bridges, to beg in the streets, and to steal +bread. -- Anatole France + + /// 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 /// |