diff options
Diffstat (limited to 'data/vim/patches/8.1.0351')
-rw-r--r-- | data/vim/patches/8.1.0351 | 194 |
1 files changed, 0 insertions, 194 deletions
diff --git a/data/vim/patches/8.1.0351 b/data/vim/patches/8.1.0351 deleted file mode 100644 index d4427da21..000000000 --- a/data/vim/patches/8.1.0351 +++ /dev/null @@ -1,194 +0,0 @@ -To: vim_dev@googlegroups.com -Subject: Patch 8.1.0351 -Fcc: outbox -From: Bram Moolenaar <Bram@moolenaar.net> -Mime-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit ------------- - -Patch 8.1.0351 -Problem: 'incsearch' for :/foo/s//<Esc> changes last search pattern. -Solution: Save the last search pattern earlier. -Files: src/ex_docmd.c, src/ex_getln.c, src/testdir/test_search.vim - - -*** ../vim-8.1.0350/src/ex_docmd.c 2018-08-30 15:58:23.244944556 +0200 ---- src/ex_docmd.c 2018-09-06 21:39:52.646486318 +0200 -*************** -*** 2911,2916 **** ---- 2911,2917 ---- - - /* - * Parse the address range, if any, in "eap". -+ * May set the last search pattern. - * Return FAIL and set "errormsg" or return OK. - */ - int -*************** -*** 4436,4445 **** - } - - /* -! * get a single EX address - * - * Set ptr to the next character after the part that was interpreted. - * Set ptr to NULL when an error is encountered. - * - * Return MAXLNUM when no Ex address was found. - */ ---- 4437,4447 ---- - } - - /* -! * Get a single EX address. - * - * Set ptr to the next character after the part that was interpreted. - * Set ptr to NULL when an error is encountered. -+ * This may set the last used search pattern. - * - * Return MAXLNUM when no Ex address was found. - */ -*** ../vim-8.1.0350/src/ex_getln.c 2018-08-31 22:09:31.561549259 +0200 ---- src/ex_getln.c 2018-09-06 21:39:30.638725276 +0200 -*************** -*** 271,276 **** ---- 271,277 ---- - /* - * Return TRUE when 'incsearch' highlighting is to be done. - * Sets search_first_line and search_last_line to the address range. -+ * May change the last search pattern. - */ - static int - do_incsearch_highlighting(int firstc, incsearch_state_T *is_state, -*************** -*** 470,477 **** ---- 471,482 ---- - int next_char; - int use_last_pat; - -+ // Parsing range may already set the last search pattern. -+ save_last_search_pattern(); -+ - if (!do_incsearch_highlighting(firstc, is_state, &skiplen, &patlen)) - { -+ restore_last_search_pattern(); - finish_incsearch_highlighting(FALSE, is_state, TRUE); - return; - } -*************** -*** 479,484 **** ---- 484,490 ---- - // If there is a character waiting, search and redraw later. - if (char_avail()) - { -+ restore_last_search_pattern(); - is_state->incsearch_postponed = TRUE; - return; - } -*************** -*** 493,499 **** - curwin->w_cursor.lnum = search_first_line; - curwin->w_cursor.col = 0; - } -- save_last_search_pattern(); - - // Use the previous pattern for ":s//". - next_char = ccline.cmdbuff[skiplen + patlen]; ---- 499,504 ---- -*************** -*** 627,636 **** ---- 632,650 ---- - int i; - int save; - -+ // Parsing range may already set the last search pattern. -+ save_last_search_pattern(); -+ - if (!do_incsearch_highlighting(firstc, is_state, &skiplen, &patlen)) -+ { -+ restore_last_search_pattern(); - return OK; -+ } - if (patlen == 0 && ccline.cmdbuff[skiplen] == NUL) -+ { -+ restore_last_search_pattern(); - return FAIL; -+ } - - if (firstc == ccline.cmdbuff[skiplen]) - { -*************** -*** 641,647 **** - else - pat = ccline.cmdbuff + skiplen; - -- save_last_search_pattern(); - cursor_off(); - out_flush(); - if (c == Ctrl_G) ---- 655,660 ---- -*************** -*** 721,728 **** ---- 734,747 ---- - { - int skiplen, patlen; - -+ // Parsing range may already set the last search pattern. -+ save_last_search_pattern(); -+ - if (!do_incsearch_highlighting(firstc, is_state, &skiplen, &patlen)) -+ { -+ restore_last_search_pattern(); - return FAIL; -+ } - - // Add a character from under the cursor for 'incsearch'. - if (is_state->did_incsearch) -*** ../vim-8.1.0350/src/testdir/test_search.vim 2018-08-31 22:09:31.561549259 +0200 ---- src/testdir/test_search.vim 2018-09-06 21:36:42.844553891 +0200 -*************** -*** 1043,1048 **** ---- 1043,1065 ---- - call delete('Xis_vimgrep_script') - endfunc - -+ func Test_keep_last_search_pattern() -+ if !exists('+incsearch') -+ return -+ endif -+ new -+ call setline(1, ['foo', 'foo', 'foo']) -+ set incsearch -+ call test_override("char_avail", 1) -+ let @/ = 'bar' -+ call feedkeys(":/foo/s//\<Esc>", 'ntx') -+ call assert_equal('bar', @/) -+ -+ bwipe! -+ call test_override("ALL", 0) -+ set noincsearch -+ endfunc -+ - func Test_search_undefined_behaviour() - if !has("terminal") - return -*** ../vim-8.1.0350/src/version.c 2018-09-06 16:27:20.664831945 +0200 ---- src/version.c 2018-09-06 21:33:45.218506207 +0200 -*************** -*** 796,797 **** ---- 796,799 ---- - { /* Add new patch number below this line */ -+ /**/ -+ 351, - /**/ - --- -How To Keep A Healthy Level Of Insanity: -3. Every time someone asks you to do something, ask if they want fries - with that. - - /// 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 /// |