diff --git a/src/evalfunc.c b/src/evalfunc.c
index f5a0bd8..81264bd 100644
--- a/src/evalfunc.c
+++ b/src/evalfunc.c
@@ -788,7 +788,7 @@
     {"prop_add",	3, 3, f_prop_add},
     {"prop_clear",	1, 3, f_prop_clear},
     {"prop_list",	1, 2, f_prop_list},
-    {"prop_remove",	2, 3, f_prop_remove},
+    {"prop_remove",	1, 3, f_prop_remove},
     {"prop_type_add",	2, 2, f_prop_type_add},
     {"prop_type_change", 2, 2, f_prop_type_change},
     {"prop_type_delete", 1, 2, f_prop_type_delete},
diff --git a/src/testdir/test_textprop.vim b/src/testdir/test_textprop.vim
index 5ea5517..eab7aaa 100644
--- a/src/testdir/test_textprop.vim
+++ b/src/testdir/test_textprop.vim
@@ -166,28 +166,64 @@
   new
   let bufnr = bufnr('')
   call AddPropTypes()
-  call setline(1, 'one two three')
+  for lnum in range(1, 4)
+    call setline(lnum, 'one two three')
+  endfor
   wincmd w
-  call prop_add(1, 1, {'length': 3, 'id': 11, 'type': 'one', 'bufnr': bufnr})
-  call prop_add(1, 5, {'length': 3, 'id': 12, 'type': 'two', 'bufnr': bufnr})
-  call prop_add(1, 11, {'length': 3, 'id': 13, 'type': 'three', 'bufnr': bufnr})
-  
+  for lnum in range(1, 4)
+    call prop_add(lnum, 1, {'length': 3, 'id': 11, 'type': 'one', 'bufnr': bufnr})
+    call prop_add(lnum, 5, {'length': 3, 'id': 12, 'type': 'two', 'bufnr': bufnr})
+    call prop_add(lnum, 11, {'length': 3, 'id': 13, 'type': 'three', 'bufnr': bufnr})
+  endfor
+
   let props = [
 	\ {'col': 1, 'length': 3, 'id': 11, 'type': 'one', 'start': 1, 'end': 1},
 	\ {'col': 5, 'length': 3, 'id': 12, 'type': 'two', 'start': 1, 'end': 1},
 	\ {'col': 11, 'length': 3, 'id': 13, 'type': 'three', 'start': 1, 'end': 1},
 	\]
   call assert_equal(props, prop_list(1, {'bufnr': bufnr}))
- 
+
   " remove by id
-  call prop_remove({'id': 12, 'bufnr': bufnr}, 1)
+  let before_props = deepcopy(props)
   unlet props[1]
+
+  call prop_remove({'id': 12, 'bufnr': bufnr}, 1)
   call assert_equal(props, prop_list(1, {'bufnr': bufnr}))
+  call assert_equal(before_props, prop_list(2, {'bufnr': bufnr}))
+  call assert_equal(before_props, prop_list(3, {'bufnr': bufnr}))
+  call assert_equal(before_props, prop_list(4, {'bufnr': bufnr}))
+
+  call prop_remove({'id': 12, 'bufnr': bufnr}, 3, 4)
+  call assert_equal(props, prop_list(1, {'bufnr': bufnr}))
+  call assert_equal(before_props, prop_list(2, {'bufnr': bufnr}))
+  call assert_equal(props, prop_list(3, {'bufnr': bufnr}))
+  call assert_equal(props, prop_list(4, {'bufnr': bufnr}))
+
+  call prop_remove({'id': 12, 'bufnr': bufnr})
+  for lnum in range(1, 4)
+    call assert_equal(props, prop_list(lnum, {'bufnr': bufnr}))
+  endfor
 
   " remove by type
-  call prop_remove({'type': 'one', 'bufnr': bufnr}, 1)
+  let before_props = deepcopy(props)
   unlet props[0]
+
+  call prop_remove({'type': 'one', 'bufnr': bufnr}, 1)
   call assert_equal(props, prop_list(1, {'bufnr': bufnr}))
+  call assert_equal(before_props, prop_list(2, {'bufnr': bufnr}))
+  call assert_equal(before_props, prop_list(3, {'bufnr': bufnr}))
+  call assert_equal(before_props, prop_list(4, {'bufnr': bufnr}))
+
+  call prop_remove({'type': 'one', 'bufnr': bufnr}, 3, 4)
+  call assert_equal(props, prop_list(1, {'bufnr': bufnr}))
+  call assert_equal(before_props, prop_list(2, {'bufnr': bufnr}))
+  call assert_equal(props, prop_list(3, {'bufnr': bufnr}))
+  call assert_equal(props, prop_list(4, {'bufnr': bufnr}))
+
+  call prop_remove({'type': 'one', 'bufnr': bufnr})
+  for lnum in range(1, 4)
+    call assert_equal(props, prop_list(lnum, {'bufnr': bufnr}))
+  endfor
 
   call DeletePropTypes()
   wincmd w
diff --git a/src/textprop.c b/src/textprop.c
index 674faeb..34738ad 100644
--- a/src/textprop.c
+++ b/src/textprop.c
@@ -629,7 +629,10 @@
 			mch_memmove(newptr, buf->b_ml.ml_line_ptr,
 							buf->b_ml.ml_line_len);
 			buf->b_ml.ml_line_ptr = newptr;
-			curbuf->b_ml.ml_flags |= ML_LINE_DIRTY;
+			buf->b_ml.ml_flags |= ML_LINE_DIRTY;
+
+			cur_prop = buf->b_ml.ml_line_ptr + len
+							+ idx * sizeof(textprop_T);
 		    }
 
 		    taillen = buf->b_ml.ml_line_len - len
diff --git a/src/version.c b/src/version.c
index 9114570..bee744e 100644
--- a/src/version.c
+++ b/src/version.c
@@ -780,6 +780,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1035,
+/**/
     1034,
 /**/
     1033,
