Fix: shadowed variables
[babeltrace.git] / src / cli / babeltrace2-cfg-cli-args.c
index 5df6ce3a4a3ce813d30ca6fe0f1f682bc9750357..ae8e8eef3f2fe9d3bae984e06007b9b2e18383c7 100644 (file)
@@ -1480,12 +1480,14 @@ struct bt_config *bt_config_query_from_args(int argc, const char *argv[],
        struct bt_config *cfg = NULL;
        const char *component_class_spec = NULL;
        const char *query_object = NULL;
-       bt_value *params;
        GString *error_str = NULL;
        struct bt_argpar_parse_ret argpar_parse_ret = { 0 };
 
-       params = bt_value_null;
-       bt_value_get_ref(bt_value_null);
+       bt_value *params = bt_value_map_create();
+       if (!params) {
+               BT_CLI_LOGE_APPEND_CAUSE_OOM();
+               goto error;
+       }
 
        *retcode = 0;
        cfg = bt_config_query_create(plugin_paths);
@@ -1527,13 +1529,21 @@ struct bt_config *bt_config_query_from_args(int argc, const char *argv[],
                        switch (argpar_item_opt->descr->id) {
                        case OPT_PARAMS:
                        {
-                               bt_value_put_ref(params);
-                               params = bt_param_parse(arg, error_str);
-                               if (!params) {
+                               bt_value *parsed_params = bt_param_parse(arg, error_str);
+                               bt_value_map_extend_status extend_status;
+                               if (!parsed_params) {
                                        BT_CLI_LOGE_APPEND_CAUSE("Invalid format for --params option's argument:\n    %s",
                                                error_str->str);
                                        goto error;
                                }
+
+                               extend_status = bt_value_map_extend(params, parsed_params);
+                               BT_VALUE_PUT_REF_AND_RESET(parsed_params);
+                               if (extend_status) {
+                                       BT_CLI_LOGE_APPEND_CAUSE("Cannot extend current parameters with --params option's argument:\n    %s",
+                                               arg);
+                                       goto error;
+                               }
                                break;
                        }
                        default:
@@ -1919,7 +1929,6 @@ struct bt_config *bt_config_run_from_args(int argc, const char *argv[],
                case OPT_PARAMS:
                {
                        bt_value *params;
-                       bt_value *params_to_set;
 
                        if (!cur_cfg_comp) {
                                BT_CLI_LOGE_APPEND_CAUSE("Cannot add parameters to unavailable component:\n    %s",
@@ -1934,8 +1943,8 @@ struct bt_config *bt_config_run_from_args(int argc, const char *argv[],
                                goto error;
                        }
 
-                       extend_status = bt_value_map_extend(
-                               cur_cfg_comp->params, params, &params_to_set);
+                       extend_status = bt_value_map_extend(cur_cfg_comp->params,
+                               params);
                        BT_VALUE_PUT_REF_AND_RESET(params);
                        if (extend_status != BT_VALUE_MAP_EXTEND_STATUS_OK) {
                                BT_CLI_LOGE_APPEND_CAUSE("Cannot extend current component parameters with --params option's argument:\n    %s",
@@ -1943,7 +1952,6 @@ struct bt_config *bt_config_run_from_args(int argc, const char *argv[],
                                goto error;
                        }
 
-                       BT_OBJECT_MOVE_REF(cur_cfg_comp->params, params_to_set);
                        break;
                }
                case OPT_LOG_LEVEL:
@@ -2603,7 +2611,6 @@ int bt_value_to_cli_param_value_append(const bt_value *value, GString *buf)
                uint64_t sz = bt_value_array_get_length(value);
                for (uint64_t i = 0; i < sz; i++) {
                        const bt_value *item;
-                       int ret;
 
                        if (i > 0) {
                                g_string_append(buf, ", ");
This page took 0.024836 seconds and 4 git commands to generate.