diff --git a/main/app.c b/main/app.c
index 4fda65ce0d91fe0d762449ac5741247e425afbe8..13250f0456691df978187a05550f98da75cf7f92 100644
--- a/main/app.c
+++ b/main/app.c
@@ -1624,8 +1624,11 @@ int ast_app_parse_options(const struct ast_app_option *options, struct ast_flags
 		} else if (argloc) {
 			args[argloc - 1] = NULL;
 		}
-		if (!argloc || !ast_strlen_zero(args[argloc - 1]))
-			ast_set_flag(flags, options[curarg].flag);
+		if (argloc && ast_strlen_zero(args[argloc - 1])) {
+			ast_log(LOG_WARNING, "Argument supplied for option '%c' was empty, option ignored.\n", curarg);
+			continue;
+		}
+		ast_set_flag(flags, options[curarg].flag);
 	}
 
 	return res;