diff --git a/src/testdir/test_textprop.vim b/src/testdir/test_textprop.vim
index 4d620ea..811ddf4 100644
--- a/src/testdir/test_textprop.vim
+++ b/src/testdir/test_textprop.vim
@@ -69,6 +69,8 @@
   call assert_equal(1, len(prop_type_list({'bufnr': bufnr})))
   call prop_type_delete('two', {'bufnr': bufnr})
   call assert_equal(0, len(prop_type_list({'bufnr': bufnr})))
+
+  call assert_fails("call prop_type_add('one', {'bufnr': 98764})", "E158:")
 endfunc
 
 func AddPropTypes()
@@ -124,6 +126,8 @@
   let expected = [{'col': 5, 'length': 0, 'type': 'two', 'id': 0, 'start': 1, 'end': 1}]
   call assert_equal(expected, prop_list(1))
 
+  call assert_fails("call prop_add(1, 5, {'type': 'two', 'bufnr': 234343})", 'E158:')
+
   call DeletePropTypes()
   bwipe!
 endfunc
@@ -136,15 +140,18 @@
   call assert_equal(props, prop_list(1))
 
   " remove by id
-  call prop_remove({'id': 12}, 1)
+  call assert_equal(1, prop_remove({'id': 12}, 1))
   unlet props[2]
   call assert_equal(props, prop_list(1))
 
   " remove by type
-  call prop_remove({'type': 'one'}, 1)
+  call assert_equal(1, prop_remove({'type': 'one'}, 1))
   unlet props[1]
   call assert_equal(props, prop_list(1))
 
+  " remove from unknown buffer
+  call assert_fails("call prop_remove({'type': 'one', 'bufnr': 123456}, 1)", 'E158:')
+
   call DeletePropTypes()
   bwipe!
 endfunc
@@ -760,3 +767,16 @@
   call prop_add(1, 1, {'type': 'comment'})
   close
 endfunc
+
+func Test_textprop_remove_from_buf()
+  new
+  let buf = bufnr('')
+  call prop_type_add('one', {'bufnr': buf})
+  call prop_add(1, 1, {'type': 'one', 'id': 234})
+  file x
+  edit y
+  call prop_remove({'id': 234, 'bufnr': buf}, 1)
+  call prop_type_delete('one', {'bufnr': buf})
+  bwipe! x
+  close
+endfunc
diff --git a/src/textprop.c b/src/textprop.c
index 9011c66..fcf3741 100644
--- a/src/textprop.c
+++ b/src/textprop.c
@@ -129,7 +129,7 @@
     di = dict_find(arg->vval.v_dict, (char_u *)"bufnr", -1);
     if (di != NULL)
     {
-	*buf = tv_get_buf(&di->di_tv, FALSE);
+	*buf = get_buf_arg(&di->di_tv);
 	if (*buf == NULL)
 	    return FAIL;
     }
@@ -560,13 +560,10 @@
     }
 
     dict = argvars[0].vval.v_dict;
-    di = dict_find(dict, (char_u *)"bufnr", -1);
-    if (di != NULL)
-    {
-	buf = tv_get_buf(&di->di_tv, FALSE);
-	if (buf == NULL)
-	    return;
-    }
+    if (get_bufnr_from_arg(&argvars[0], &buf) == FAIL)
+	return;
+    if (buf->b_ml.ml_mfp == NULL)
+	return;
 
     di = dict_find(dict, (char_u*)"all", -1);
     if (di != NULL)
@@ -628,7 +625,7 @@
 			buf->b_ml.ml_flags |= ML_LINE_DIRTY;
 
 			cur_prop = buf->b_ml.ml_line_ptr + len
-							+ idx * sizeof(textprop_T);
+						    + idx * sizeof(textprop_T);
 		    }
 
 		    taillen = buf->b_ml.ml_line_len - len
diff --git a/src/version.c b/src/version.c
index ac1c67a..81b7486 100644
--- a/src/version.c
+++ b/src/version.c
@@ -768,6 +768,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1388,
+/**/
     1387,
 /**/
     1386,
