Commit Diff


commit - f2b332a5aef1bdabe9e254a3b85c32490a6cb3ef
commit + 5a3c3edeecbcf2d8b0e2b2c0f20f527cb47d714b
blob - f5b1c014d6ab8dd8160a9bbc8a28d03b0a1d01da
blob + f29666f53077c9e38a051bbfc55cca5a2f175397
--- cmd.c
+++ cmd.c
@@ -34,6 +34,14 @@
 		}						\
 	} while(0)
 
+#define GUARD_READ_ONLY()				\
+	do {						\
+		if (!in_minibuffer) {			\
+			message("text is read-only");	\
+			return;				\
+		}					\
+	} while(0)
+
 /* return 1 if moved, 0 otherwise */
 static inline int
 forward_line(struct buffer *buffer, int n)
@@ -664,10 +672,7 @@ cmd_mini_delete_char(struct buffer *buffer)
 {
 	char *c, *n;
 
-	if (!in_minibuffer) {
-		message("text is read-only");
-		return;
-	}
+	GUARD_READ_ONLY();
 
 	minibuffer_taint_hist();
 
@@ -686,10 +691,7 @@ cmd_mini_delete_backward_char(struct buffer *buffer)
 {
 	char *c, *p, *start;
 
-	if (!in_minibuffer) {
-		message("text is read-only");
-		return;
-	}
+	GUARD_READ_ONLY();
 
 	minibuffer_taint_hist();
 
@@ -710,10 +712,7 @@ cmd_mini_kill_line(struct buffer *buffer)
 {
 	char *c;
 
-	if (!in_minibuffer) {
-		message("text is read-only");
-		return;
-	}
+	GUARD_READ_ONLY();
 
 	minibuffer_taint_hist();
 	c = utf8_nth(buffer->current_line->line, buffer->cpoff);