From 1bab1de69866c38c3e9924d23f21a90623a0a6dc Mon Sep 17 00:00:00 2001 From: Denis Vlasenko Date: Fri, 27 Jul 2007 15:30:39 +0000 Subject: [PATCH] fix for suffix optimization (which was in previous commit) --- include/libbb.h | 1 + libbb/xatonum_template.c | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/include/libbb.h b/include/libbb.h index 780bd4566..ddbde1833 100644 --- a/include/libbb.h +++ b/include/libbb.h @@ -450,6 +450,7 @@ const char *make_human_readable_str(unsigned long long size, /* Put a string of hex bytes ("1b2e66fe"...), return advanced pointer */ char *bin2hex(char *buf, const char *cp, int count); +/* Last element is marked by mult == 0 */ struct suffix_mult { char suffix[4]; unsigned mult; diff --git a/libbb/xatonum_template.c b/libbb/xatonum_template.c index bc8116056..205da53c8 100644 --- a/libbb/xatonum_template.c +++ b/libbb/xatonum_template.c @@ -45,7 +45,7 @@ unsigned type xstrtou(_range_sfx)(const char *numstr, int base, * Note that we also allow nul suffixes with associated multipliers, * to allow for scaling of the numstr by some default multiplier. */ if (suffixes) { - while (suffixes->suffix) { + while (suffixes->mult) { if (strcmp(suffixes->suffix, e) == 0) { if (XSTR_UTYPE_MAX / suffixes->mult < r) goto range; /* overflow! */