From 782886719822c956e800dfb9c0665e2b301cb1fb Mon Sep 17 00:00:00 2001 From: Markus Armbruster Date: Fri, 18 Dec 2015 16:35:07 +0100 Subject: error: Use error_report_err() instead of ad hoc prints Unlike ad hoc prints, error_report_err() uses the error whole instead of just its message obtained with error_get_pretty(). This avoids suppressing its hint (see commit 50b7b00). Example: $ bld/ivshmem-server -l 42@ Parameter 'shm_size' expects a size You may use k, M, G or T suffixes for kilobytes, megabytes, gigabytes and terabytes. The last line is new with this patch. While there, drop a "cannot parse shm size: " message prefix; it's redundant, because the error message proper is always of the form "Parameter 'shm_size' expects ...". Signed-off-by: Markus Armbruster Reviewed-by: Eric Blake Message-Id: <1450452927-8346-5-git-send-email-armbru@redhat.com> --- contrib/ivshmem-server/main.c | 4 +--- qdev-monitor.c | 3 +-- qemu-nbd.c | 3 +-- 3 files changed, 3 insertions(+), 7 deletions(-) diff --git a/contrib/ivshmem-server/main.c b/contrib/ivshmem-server/main.c index 54ff001c23..00508b5edd 100644 --- a/contrib/ivshmem-server/main.c +++ b/contrib/ivshmem-server/main.c @@ -106,9 +106,7 @@ ivshmem_server_parse_args(IvshmemServerArgs *args, int argc, char *argv[]) case 'l': /* shm_size */ parse_option_size("shm_size", optarg, &args->shm_size, &errp); if (errp) { - fprintf(stderr, "cannot parse shm size: %s\n", - error_get_pretty(errp)); - error_free(errp); + error_report_err(errp); ivshmem_server_usage(argv[0], 1); } break; diff --git a/qdev-monitor.c b/qdev-monitor.c index 30936dfba4..3ce47109e3 100644 --- a/qdev-monitor.c +++ b/qdev-monitor.c @@ -266,8 +266,7 @@ int qdev_device_help(QemuOpts *opts) return 1; error: - error_printf("%s\n", error_get_pretty(local_err)); - error_free(local_err); + error_report_err(local_err); return 1; } diff --git a/qemu-nbd.c b/qemu-nbd.c index 65c0ebda04..706552e64c 100644 --- a/qemu-nbd.c +++ b/qemu-nbd.c @@ -251,8 +251,7 @@ static void *nbd_client_thread(void *arg) &size, &local_error); if (ret < 0) { if (local_error) { - fprintf(stderr, "%s\n", error_get_pretty(local_error)); - error_free(local_error); + error_report_err(local_error); } goto out_socket; } -- cgit v1.2.3