about summary refs log tree commit diff
path: root/src/stdlib/strtoumax.c
diff options
context:
space:
mode:
authorRich Felker <dalias@aerifal.cx>2011-07-14 22:11:00 -0400
committerRich Felker <dalias@aerifal.cx>2011-07-14 22:11:00 -0400
commit47d027ee1a44829819c345287623fe75374893ab (patch)
tree6a44b7e7c915496ea8bbefa66c91c4db5e97afa0 /src/stdlib/strtoumax.c
parentd3fd192523db544e6005051f224a2d7bafabedd9 (diff)
downloadmusl-47d027ee1a44829819c345287623fe75374893ab.tar.gz
musl-47d027ee1a44829819c345287623fe75374893ab.tar.xz
musl-47d027ee1a44829819c345287623fe75374893ab.zip
fix various bugs in new integer parser framework
1. my interpretation of subject sequence definition was wrong. adjust
parser to conform to the standard.

2. some code for handling tail overflow case was missing (forgot to
finish writing it).

3. typo (= instead of ==) caused ERANGE to wrongly behave like EINVAL
Diffstat (limited to 'src/stdlib/strtoumax.c')
-rw-r--r--src/stdlib/strtoumax.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/stdlib/strtoumax.c b/src/stdlib/strtoumax.c
index a2bb4d7d..a299dc04 100644
--- a/src/stdlib/strtoumax.c
+++ b/src/stdlib/strtoumax.c
@@ -26,7 +26,7 @@ uintmax_t strtoumax(const char *s1, char **p, int base)
 
 	if (ip.err) {
 		errno = ip.err;
-		if (ip.err = EINVAL) return 0;
+		if (ip.err == EINVAL) return 0;
 		return UINTMAX_MAX;
 	}