diff --git a/common/main.c b/common/main.c
index db181d319b85f44fb88de1204601c885adb3cfdb..3b9e39a9805b9da3831edef2177c44b00c72893e 100644
--- a/common/main.c
+++ b/common/main.c
@@ -1338,7 +1338,8 @@ static int builtin_run_command(const char *cmd, int flag)
 			continue;
 		}
 
-		rc = cmd_process(flag, argc, argv, &repeatable);
+		if (cmd_process(flag, argc, argv, &repeatable))
+			rc = -1;
 
 		/* Did the user stop this? */
 		if (had_ctrlc ())