[git commit] shell: move all definitions of strto_arith_t() together

Denys Vlasenko vda.linux at googlemail.com
Sun May 26 12:02:10 UTC 2019


commit: https://git.busybox.net/busybox/commit/?id=8b35f207bbd91a5bbca816dbdf5f8f33dd57f19d
branch: https://git.busybox.net/busybox/commit/?id=refs/heads/master

Signed-off-by: Denys Vlasenko <vda.linux at googlemail.com>
---
 shell/math.c | 10 +++++++---
 shell/math.h |  8 --------
 2 files changed, 7 insertions(+), 11 deletions(-)

diff --git a/shell/math.c b/shell/math.c
index 2ea0317e9..eaf4f2453 100644
--- a/shell/math.c
+++ b/shell/math.c
@@ -545,8 +545,12 @@ static arith_t strto_arith_t(const char *nptr, char **endptr)
 	*endptr = (char*)nptr;
 	return n;
 }
-#define strto_arith_t(nptr, endptr, base_is_always_0) \
-	strto_arith_t(nptr, endptr)
+#else /* !ENABLE_FEATURE_SH_MATH_BASE */
+# if ENABLE_FEATURE_SH_MATH_64
+#  define strto_arith_t(nptr, endptr) strtoull(nptr, endptr, 0)
+# else
+#  define strto_arith_t(nptr, endptr) strtoul(nptr, endptr, 0)
+# endif
 #endif
 
 static arith_t FAST_FUNC
@@ -627,7 +631,7 @@ evaluate_string(arith_state_t *math_state, const char *expr)
 			/* Number */
 			numstackptr->var = NULL;
 			errno = 0;
-			numstackptr->val = strto_arith_t(expr, (char**) &expr, 0);
+			numstackptr->val = strto_arith_t(expr, (char**) &expr);
 			if (errno)
 				numstackptr->val = 0; /* bash compat */
 			goto num;
diff --git a/shell/math.h b/shell/math.h
index ec9decb1f..41ef6e8df 100644
--- a/shell/math.h
+++ b/shell/math.h
@@ -71,14 +71,6 @@ typedef long arith_t;
 # define ARITH_FMT "%ld"
 #endif
 
-#if !ENABLE_FEATURE_SH_MATH_BASE
-# if ENABLE_FEATURE_SH_MATH_64
-#  define strto_arith_t strtoull
-# else
-#  define strto_arith_t strtoul
-# endif
-#endif
-
 typedef const char* FAST_FUNC (*arith_var_lookup_t)(const char *name);
 typedef void        FAST_FUNC (*arith_var_set_t)(const char *name, const char *val);
 //typedef const char* FAST_FUNC (*arith_var_endofname_t)(const char *name);


More information about the busybox-cvs mailing list