changeset 615:43489d673976

Add NOP b (byte) suffix to atolx() since od needs it.
author Rob Landley <rob@landley.net>
date Sat, 30 Jun 2012 16:31:37 -0500
parents 2b40588a3d25
children e6acd7fbbfee
files lib/lib.c
diffstat 1 files changed, 5 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/lib/lib.c	Tue Jun 26 20:47:01 2012 -0500
+++ b/lib/lib.c	Sat Jun 30 16:31:37 2012 -0500
@@ -499,13 +499,15 @@
 // (zetta and yotta don't fit in 64 bits.)
 long atolx(char *numstr)
 {
-	char *c, *suffixes="kmgtpe", *end;
+	char *c, *suffixes="bkmgtpe", *end;
 	long val = strtol(numstr, &c, 0);
 
 	if (*c) {
 		end = strchr(suffixes, tolower(*c));
-		if (end) val *= 1024L<<((end-suffixes)*10);
-		else {
+		if (end) {
+			int shift = end-suffixes;
+			if (shift--) val *= 1024L<<(shift*10);
+		} else {
 			while (isspace(*c)) c++;
 			if (*c) error_exit("not integer: %s", numstr);
 		}