From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:48647) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RSlzb-0006PS-Pw for qemu-devel@nongnu.org; Tue, 22 Nov 2011 03:46:16 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1RSlza-00009A-2M for qemu-devel@nongnu.org; Tue, 22 Nov 2011 03:46:15 -0500 Received: from oxygen.pond.sub.org ([78.46.104.156]:53673) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RSlzZ-00007Q-N1 for qemu-devel@nongnu.org; Tue, 22 Nov 2011 03:46:13 -0500 Received: from blackfin.pond.sub.org (p5B32D94C.dip.t-dialin.net [91.50.217.76]) by oxygen.pond.sub.org (Postfix) with ESMTPA id 89152A22CD for ; Tue, 22 Nov 2011 09:46:07 +0100 (CET) From: Markus Armbruster Date: Tue, 22 Nov 2011 09:46:01 +0100 Message-Id: <1321951566-11667-2-git-send-email-armbru@redhat.com> In-Reply-To: <1321951566-11667-1-git-send-email-armbru@redhat.com> References: <1321951566-11667-1-git-send-email-armbru@redhat.com> Subject: [Qemu-devel] [PATCH 1/6] cutils: Drop broken support for zero strtosz default_suffix List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: Jes.Sorensen@redhat.com Commit 9f9b17a4's strtosz() defaults a missing suffix to 'M', except it rejects fractions then (switch case 0). When commit d8427002 introduced strtosz_suffix(), that changed: fractions are no longer rejected, because we go to switch case 'M' on missing suffix now. Not mentioned in commit message, probably unintentional. Not worth changing back now. Because case 0 is still around, you can get the old behavior by passing a zero default_suffix to strtosz_suffix() or strtosz_suffix_unit(). Undocumented and not used. Drop. Commit d8427002 also neglected to update the function comment. Fix it up. Signed-off-by: Markus Armbruster --- cutils.c | 17 ++++------------- 1 files changed, 4 insertions(+), 13 deletions(-) diff --git a/cutils.c b/cutils.c index 5d995bc..55b0596 100644 --- a/cutils.c +++ b/cutils.c @@ -317,10 +317,9 @@ int fcntl_setfl(int fd, int flag) /* * Convert string to bytes, allowing either B/b for bytes, K/k for KB, - * M/m for MB, G/g for GB or T/t for TB. Default without any postfix - * is MB. End pointer will be returned in *end, if not NULL. A valid - * value must be terminated by whitespace, ',' or '\0'. Return -1 on - * error. + * M/m for MB, G/g for GB or T/t for TB. End pointer will be returned + * in *end, if not NULL. A valid value must be terminated by + * whitespace, ',' or '\0'. Return -1 on error. */ int64_t strtosz_suffix_unit(const char *nptr, char **end, const char default_suffix, int64_t unit) @@ -349,11 +348,7 @@ int64_t strtosz_suffix_unit(const char *nptr, char **end, d = c; if (qemu_isspace(c) || c == '\0' || c == ',') { c = 0; - if (default_suffix) { - d = default_suffix; - } else { - d = c; - } + d = default_suffix; } switch (qemu_toupper(d)) { case STRTOSZ_DEFSUFFIX_B: @@ -365,10 +360,6 @@ int64_t strtosz_suffix_unit(const char *nptr, char **end, case STRTOSZ_DEFSUFFIX_KB: mul = unit; break; - case 0: - if (mul_required) { - goto fail; - } case STRTOSZ_DEFSUFFIX_MB: mul = unit * unit; break; -- 1.7.6.4