X-Git-Url: https://git.efficios.com/?a=blobdiff_plain;f=src%2Fcli%2Fbabeltrace2-cfg-cli-args-default.c;h=0e657720bc5788a489a047d4bc0f8daddb344ca2;hb=353c2524c2d4606a79ac5f4c0354a683a14e63e5;hp=b73457a2a869222b06fb1cbcc755680145bf6541;hpb=afe821caedf56baa63d94c5b7b87805922db7a7c;p=babeltrace.git diff --git a/src/cli/babeltrace2-cfg-cli-args-default.c b/src/cli/babeltrace2-cfg-cli-args-default.c index b73457a2..0e657720 100644 --- a/src/cli/babeltrace2-cfg-cli-args-default.c +++ b/src/cli/babeltrace2-cfg-cli-args-default.c @@ -1,44 +1,25 @@ /* - * Copyright 2016 - Jérémie Galarneau - * Copyright 2017 - Philippe Proulx + * SPDX-License-Identifier: MIT * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. + * Copyright 2016 Jérémie Galarneau + * Copyright 2017 Philippe Proulx */ +#include + #include #include "babeltrace2-cfg.h" #include "babeltrace2-cfg-cli-args.h" #include "babeltrace2-cfg-cli-args-default.h" -#ifdef ENABLE_DEBUG_INFO -# define BT_ENABLE_DEBUG_INFO 1 -#else -# define BT_ENABLE_DEBUG_INFO 0 -#endif - #ifdef BT_SET_DEFAULT_IN_TREE_CONFIGURATION -struct bt_config *bt_config_cli_args_create_with_default(int argc, - const char *argv[], int *retcode) +enum bt_config_cli_args_status bt_config_cli_args_create_with_default(int argc, + const char *argv[], struct bt_config **cfg, + const bt_interrupter *interrupter) { + enum bt_config_cli_args_status status; bt_value *initial_plugin_paths; - struct bt_config *cfg = NULL; int ret; initial_plugin_paths = bt_value_array_create(); @@ -58,36 +39,36 @@ struct bt_config *bt_config_cli_args_create_with_default(int argc, * plugin provider, if the env variable is already set, do not overwrite * it. */ - setenv("LIBBABELTRACE2_PLUGIN_PROVIDER_DIR", CONFIG_IN_TREE_PROVIDER_DIR, 0); + g_setenv("LIBBABELTRACE2_PLUGIN_PROVIDER_DIR", CONFIG_IN_TREE_PROVIDER_DIR, 0); #else /* * If the Pyhton plugin provider is disabled, use a non-exitent path to avoid * loading the system installed provider if it exit, if the env variable is * already set, do not overwrite it. */ - setenv("LIBBABELTRACE2_PLUGIN_PROVIDER_DIR", "/nonexistent", 0); + g_setenv("LIBBABELTRACE2_PLUGIN_PROVIDER_DIR", "/nonexistent", 0); #endif - cfg = bt_config_cli_args_create(argc, argv, retcode, true, true, - initial_plugin_paths); + status = bt_config_cli_args_create(argc, argv, cfg, true, true, + initial_plugin_paths, interrupter); goto end; error: - *retcode = 1; - BT_OBJECT_PUT_REF_AND_RESET(cfg); + status = BT_CONFIG_CLI_ARGS_STATUS_ERROR; end: bt_value_put_ref(initial_plugin_paths); - return cfg; + return status; } #else /* BT_SET_DEFAULT_IN_TREE_CONFIGURATION */ -struct bt_config *bt_config_cli_args_create_with_default(int argc, - const char *argv[], int *retcode) +enum bt_config_cli_args_status bt_config_cli_args_create_with_default(int argc, + const char *argv[], struct bt_config **cfg, + const bt_interrupter *interrupter) { - return bt_config_cli_args_create(argc, argv, retcode, false, false, - NULL); + return bt_config_cli_args_create(argc, argv, cfg, false, false, + NULL, interrupter); } #endif /* BT_SET_DEFAULT_IN_TREE_CONFIGURATION */