X-Git-Url: http://git.efficios.com/?p=babeltrace.git;a=blobdiff_plain;f=cli%2Fbabeltrace-cfg-cli-args.c;h=2978ab48a03f43ef3f539a0e14787cc6fae09b2c;hp=4fba2b162a206e02562509f319cff65b6e4d4796;hb=0ca8409d46a794bafa1cbd50eb531fc650d148c1;hpb=ed36359d19cb79425fa2008e8b656d63b062401f diff --git a/cli/babeltrace-cfg-cli-args.c b/cli/babeltrace-cfg-cli-args.c index 4fba2b16..2978ab48 100644 --- a/cli/babeltrace-cfg-cli-args.c +++ b/cli/babeltrace-cfg-cli-args.c @@ -2719,7 +2719,7 @@ struct bt_config *bt_config_run_from_args_array(struct bt_value *run_args, { struct bt_config *cfg = NULL; const char **argv; - size_t i; + int64_t i, len; const size_t argc = bt_value_array_size(run_args) + 1; argv = calloc(argc, sizeof(*argv)); @@ -2730,7 +2730,12 @@ struct bt_config *bt_config_run_from_args_array(struct bt_value *run_args, argv[0] = "run"; - for (i = 0; i < bt_value_array_size(run_args); i++) { + len = bt_value_array_size(run_args); + if (len < 0) { + printf_err("Invalid executable arguments\n"); + goto end; + } + for (i = 0; i < len; i++) { int ret; struct bt_value *arg_value = bt_value_array_get(run_args, i); const char *arg;