X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=src%2Fcli%2Fbabeltrace2.c;h=0339426dc4e7c8f33f037679ead7eb2cc6520ba8;hb=927c069356ec0754daf592601145313155e9ce94;hp=bb0411a65fe8f174912ce86003998de9dfe67ae3;hpb=b5cd7d6593ad0dba510172268777a521442387d7;p=babeltrace.git diff --git a/src/cli/babeltrace2.c b/src/cli/babeltrace2.c index bb0411a6..0339426d 100644 --- a/src/cli/babeltrace2.c +++ b/src/cli/babeltrace2.c @@ -266,7 +266,7 @@ void print_plugin_comp_cls_opt(FILE *fh, const char *plugin_name, fprintf(fh, "'%s%s%s%s", bt_common_color_bold(), - bt_common_color_fg_cyan(), + bt_common_color_fg_bright_cyan(), component_type_str(type), bt_common_color_fg_default()); @@ -330,13 +330,14 @@ end: } static -bt_bool collect_map_keys(const char *key, const bt_value *object, void *data) +bt_value_map_foreach_entry_const_func_status collect_map_keys( + const char *key, const bt_value *object, void *data) { GPtrArray *map_keys = data; g_ptr_array_add(map_keys, (gpointer *) key); - return BT_TRUE; + return BT_VALUE_MAP_FOREACH_ENTRY_CONST_FUNC_STATUS_OK; } static @@ -367,31 +368,31 @@ void print_value_rec(FILE *fp, const bt_value *value, size_t indent) case BT_VALUE_TYPE_BOOL: bool_val = bt_value_bool_get(value); fprintf(fp, "%s%s%s%s\n", bt_common_color_bold(), - bt_common_color_fg_cyan(), bool_val ? "yes" : "no", + bt_common_color_fg_bright_cyan(), bool_val ? "yes" : "no", bt_common_color_reset()); break; case BT_VALUE_TYPE_UNSIGNED_INTEGER: uint_val = bt_value_integer_unsigned_get(value); fprintf(fp, "%s%s%" PRIu64 "%s\n", bt_common_color_bold(), - bt_common_color_fg_red(), uint_val, + bt_common_color_fg_bright_red(), uint_val, bt_common_color_reset()); break; case BT_VALUE_TYPE_SIGNED_INTEGER: int_val = bt_value_integer_signed_get(value); fprintf(fp, "%s%s%" PRId64 "%s\n", bt_common_color_bold(), - bt_common_color_fg_red(), int_val, + bt_common_color_fg_bright_red(), int_val, bt_common_color_reset()); break; case BT_VALUE_TYPE_REAL: dbl_val = bt_value_real_get(value); fprintf(fp, "%s%s%lf%s\n", bt_common_color_bold(), - bt_common_color_fg_red(), dbl_val, + bt_common_color_fg_bright_red(), dbl_val, bt_common_color_reset()); break; case BT_VALUE_TYPE_STRING: str_val = bt_value_string_get(value); fprintf(fp, "%s%s%s%s\n", bt_common_color_bold(), - bt_common_color_fg_green(), str_val, + bt_common_color_fg_bright_green(), str_val, bt_common_color_reset()); break; case BT_VALUE_TYPE_ARRAY: @@ -659,7 +660,7 @@ void print_plugin_info(const bt_plugin *plugin) version_avail = bt_plugin_get_version(plugin, &major, &minor, &patch, &extra); printf("%s%s%s%s:\n", bt_common_color_bold(), - bt_common_color_fg_blue(), plugin_name, + bt_common_color_fg_bright_blue(), plugin_name, bt_common_color_reset()); if (path) { printf(" %sPath%s: %s\n", bt_common_color_bold(), @@ -717,22 +718,21 @@ enum bt_cmd_status cmd_query(struct bt_config *cfg) cfg->cmd_data.query.cfg_component->params, &results, &fail_reason); if (ret) { - goto failed; + BT_CLI_LOGE_APPEND_CAUSE( + "Failed to query component class: %s: plugin-name=\"%s\", " + "comp-cls-name=\"%s\", comp-cls-type=%d " + "object=\"%s\"", fail_reason, + cfg->cmd_data.query.cfg_component->plugin_name->str, + cfg->cmd_data.query.cfg_component->comp_cls_name->str, + cfg->cmd_data.query.cfg_component->type, + cfg->cmd_data.query.object->str); + goto error; } print_value(stdout, results, 0); cmd_status = BT_CMD_STATUS_OK; goto end; -failed: - BT_CLI_LOGE_APPEND_CAUSE( - "Failed to query component class: %s: plugin-name=\"%s\", " - "comp-cls-name=\"%s\", comp-cls-type=%d " - "object=\"%s\"", fail_reason, - cfg->cmd_data.query.cfg_component->plugin_name->str, - cfg->cmd_data.query.cfg_component->comp_cls_name->str, - cfg->cmd_data.query.cfg_component->type, - cfg->cmd_data.query.object->str); error: cmd_status = BT_CMD_STATUS_ERROR; @@ -988,7 +988,9 @@ enum bt_cmd_status cmd_print_lttng_live_sessions(struct bt_config *cfg) ret = query(cfg, comp_cls, "sessions", params, &results, &fail_reason); if (ret) { - goto failed; + BT_CLI_LOGE_APPEND_CAUSE("Failed to query `sessions` object: %s", + fail_reason); + goto error; } BT_ASSERT(results); @@ -1061,10 +1063,6 @@ enum bt_cmd_status cmd_print_lttng_live_sessions(struct bt_config *cfg) cmd_status = BT_CMD_STATUS_OK; goto end; -failed: - BT_CLI_LOGE_APPEND_CAUSE("Failed to query `sessions` object: %s", - fail_reason); - error: cmd_status = BT_CMD_STATUS_ERROR; @@ -1129,7 +1127,9 @@ enum bt_cmd_status cmd_print_ctf_metadata(struct bt_config *cfg) ret = query(cfg, comp_cls, "metadata-info", params, &results, &fail_reason); if (ret) { - goto failed; + BT_CLI_LOGE_APPEND_CAUSE( + "Failed to query `metadata-info` object: %s", fail_reason); + goto error; } metadata_text_value = bt_value_map_borrow_entry_value_const(results, @@ -1169,9 +1169,6 @@ enum bt_cmd_status cmd_print_ctf_metadata(struct bt_config *cfg) cmd_status = BT_CMD_STATUS_OK; goto end; -failed: - BT_CLI_LOGE_APPEND_CAUSE( - "Failed to query `metadata-info` object: %s", fail_reason); error: cmd_status = BT_CMD_STATUS_ERROR; @@ -2646,7 +2643,7 @@ void print_error_causes(void) if (!error || bt_error_get_cause_count(error) == 0) { fprintf(stderr, "%s%sUnknown command-line error.%s\n", - bt_common_color_bold(), bt_common_color_fg_red(), + bt_common_color_bold(), bt_common_color_fg_bright_red(), bt_common_color_reset()); goto end; } @@ -2673,7 +2670,7 @@ void print_error_causes(void) /* Print prefix */ fprintf(stderr, prefix_fmt, - bt_common_color_bold(), bt_common_color_fg_red(), + bt_common_color_bold(), bt_common_color_fg_bright_red(), bt_common_color_reset()); /* Print actor name */ @@ -2721,7 +2718,7 @@ void print_error_causes(void) /* Print file name and line number */ fprintf(stderr, "] (%s%s%s%s:%s%" PRIu64 "%s)\n", bt_common_color_bold(), - bt_common_color_fg_magenta(), + bt_common_color_fg_bright_magenta(), bt_error_cause_get_file_name(cause), bt_common_color_reset(), bt_common_color_fg_green(), @@ -2841,7 +2838,6 @@ int main(int argc, const char **argv) break; case BT_CMD_STATUS_ERROR: retcode = 1; - print_error_causes(); break; case BT_CMD_STATUS_INTERRUPTED: retcode = 2; @@ -2852,6 +2848,10 @@ int main(int argc, const char **argv) } end: + if (retcode == 1) { + print_error_causes(); + } + BT_OBJECT_PUT_REF_AND_RESET(cfg); fini_loaded_plugins(); bt_interrupter_put_ref(the_interrupter);