From: Markus Armbruster Date: Thu, 17 Dec 2015 16:35:14 +0000 (+0100) Subject: error: Don't append a newline when printing the error hint X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=543202c0ddbcc4ee97d82fe45356e1ab00093f90;p=qemu.git error: Don't append a newline when printing the error hint Since commit 50b7b00, we have error_append_hint() to conveniently accumulate Error member @hint. error_report_err() prints it with a newline appended. Consequently, users of error_append_hint() need to know whether theirs is the final line of the hint to decide whether it needs a newline. Not a nice interface. Change error_report_err() to print just the hint, and the (still few) users of error_append_hint() to add the required newline. Cc: Eric Blake Signed-off-by: Markus Armbruster Reviewed-by: Eric Blake Message-Id: <1450370121-5768-7-git-send-email-armbru@redhat.com> --- diff --git a/qdev-monitor.c b/qdev-monitor.c index a35098f711..30936dfba4 100644 --- a/qdev-monitor.c +++ b/qdev-monitor.c @@ -304,6 +304,7 @@ static void qbus_list_bus(DeviceState *dev, Error **errp) error_append_hint(errp, "%s\"%s\"", sep, child->name); sep = ", "; } + error_append_hint(errp, "\n"); } static void qbus_list_dev(BusState *bus, Error **errp) @@ -321,6 +322,7 @@ static void qbus_list_dev(BusState *bus, Error **errp) } sep = ", "; } + error_append_hint(errp, "\n"); } static BusState *qbus_find_bus(DeviceState *dev, char *elem) diff --git a/util/error.c b/util/error.c index 80c89a2079..9b27c4508e 100644 --- a/util/error.c +++ b/util/error.c @@ -204,7 +204,7 @@ void error_report_err(Error *err) { error_report("%s", error_get_pretty(err)); if (err->hint) { - error_printf_unless_qmp("%s\n", err->hint->str); + error_printf_unless_qmp("%s", err->hint->str); } error_free(err); } diff --git a/util/qemu-option.c b/util/qemu-option.c index a50eceae4a..a2d593ad2b 100644 --- a/util/qemu-option.c +++ b/util/qemu-option.c @@ -206,7 +206,7 @@ void parse_option_size(const char *name, const char *value, default: error_setg(errp, QERR_INVALID_PARAMETER_VALUE, name, "a size"); error_append_hint(errp, "You may use k, M, G or T suffixes for " - "kilobytes, megabytes, gigabytes and terabytes."); + "kilobytes, megabytes, gigabytes and terabytes.\n"); return; } } else { @@ -647,7 +647,7 @@ QemuOpts *qemu_opts_create(QemuOptsList *list, const char *id, error_setg(errp, QERR_INVALID_PARAMETER_VALUE, "id", "an identifier"); error_append_hint(errp, "Identifiers consist of letters, digits, " - "'-', '.', '_', starting with a letter."); + "'-', '.', '_', starting with a letter.\n"); return NULL; } opts = qemu_opts_find(list, id);