From f17fd4fdf0df3d2f3444399d04c38d22b9a3e1b7 Mon Sep 17 00:00:00 2001 From: Markus Armbruster Date: Tue, 21 Feb 2017 21:14:06 +0100 Subject: util/cutils: Return qemu_strtosz*() error and value separately This makes qemu_strtosz(), qemu_strtosz_mebi() and qemu_strtosz_metric() similar to qemu_strtoi64(), except negative values are rejected. Cc: Dr. David Alan Gilbert Cc: Eduardo Habkost (maintainer:X86) Cc: Kevin Wolf (supporter:Block layer core) Cc: Max Reitz (supporter:Block layer core) Cc: qemu-block@nongnu.org (open list:Block layer core) Signed-off-by: Markus Armbruster Reviewed-by: Eric Blake Reviewed-by: Dr. David Alan Gilbert Message-Id: <1487708048-2131-23-git-send-email-armbru@redhat.com> --- qemu-io-cmds.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'qemu-io-cmds.c') diff --git a/qemu-io-cmds.c b/qemu-io-cmds.c index 973eb94774..01a6dc6fbc 100644 --- a/qemu-io-cmds.c +++ b/qemu-io-cmds.c @@ -137,10 +137,14 @@ static char **breakline(char *input, int *count) static int64_t cvtnum(const char *s) { - int64_t ret; + int err; + int64_t value; - ret = qemu_strtosz(s, NULL); - return ret; + err = qemu_strtosz(s, NULL, &value); + if (err < 0) { + return err; + } + return value; } static void print_cvtnum_err(int64_t rc, const char *arg) -- cgit v1.2.1