Commit Diff


commit - 307e9acc7f8c71bc44762e639f8a477e3f89f269
commit + 9863381c8cac503847e844df9dcb38e0c73073a7
blob - b25a7d9c69816a323f5953d58ffcf0c75034ad24
blob + 05498a288c6c3203f5a61de6b222f50a2dc6c27f
--- cmd.c
+++ cmd.c
@@ -785,8 +785,9 @@ cmd_mini_delete_char(struct buffer *buffer)
 
 	text = vl->parent->line + vl->from + old_point;
 	rest = vl->len - buffer->point_offset;
-	memmove(text, text + gap, rest);
+	memmove(text, text + gap, rest + 1);
 	buffer->point_offset = old_point;
+	vl->len -= gap;
 
 	recompute_completions(0);
 }
@@ -811,7 +812,8 @@ cmd_mini_delete_backward_char(struct buffer *buffer)
 
 	text = vl->parent->line + vl->from + buffer->point_offset;
 	rest = vl->len - old_point;
-	memmove(text, text + gap, rest);
+	memmove(text, text + gap, rest + 1);
+	vl->len -= gap;
 
 	recompute_completions(0);
 }