diff --git a/cmd/ubi.c b/cmd/ubi.c
index b61ae1efea4..0a6a80bdd10 100644
--- a/cmd/ubi.c
+++ b/cmd/ubi.c
@@ -653,7 +653,7 @@ static int do_ubi(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
 
 	if (strcmp(argv[1], "list") == 0) {
 		int numeric = 0;
-		if (argc >= 2 && argv[2][0] == '-') {
+		if (argc >= 3 && argv[2][0] == '-') {
 			if (strcmp(argv[2], "-numeric") == 0)
 				numeric = 1;
 			else