changeset 19151:f12eda320c78 v8.2.0135

patch 8.2.0135: bracketed paste can still cause invalid memory access Commit: https://github.com/vim/vim/commit/fe4bbac1166f2e4e3fa18cb966ec7305198c8176 Author: Bram Moolenaar <Bram@vim.org> Date: Mon Jan 20 21:12:20 2020 +0100 patch 8.2.0135: bracketed paste can still cause invalid memory access Problem: Bracketed paste can still cause invalid memory access. (Dominique Pelle) Solution: Check for NULL pointer.
author Bram Moolenaar <Bram@vim.org>
date Mon, 20 Jan 2020 21:15:04 +0100
parents c30587dcce5d
children ee57a52a4539
files src/edit.c src/testdir/test_search.vim src/version.c
diffstat 3 files changed, 5 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/edit.c
+++ b/src/edit.c
@@ -4942,7 +4942,7 @@ bracketed_paste(paste_mode_T mode, int d
     int		save_paste = p_paste;
 
     // If the end code is too long we can't detect it, read everything.
-    if (STRLEN(end) >= NUMBUFLEN)
+    if (end != NULL && STRLEN(end) >= NUMBUFLEN)
 	end = NULL;
     ++no_mapping;
     allow_keys = 0;
--- a/src/testdir/test_search.vim
+++ b/src/testdir/test_search.vim
@@ -1451,6 +1451,7 @@ func Test_searchdecl()
 endfunc
 
 func Test_search_special()
-  " this was causing illegal memory access
+  " this was causing illegal memory access and an endless loop
+  set t_PE=
   exe "norm /\x80PS"
 endfunc
--- a/src/version.c
+++ b/src/version.c
@@ -743,6 +743,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    135,
+/**/
     134,
 /**/
     133,