From 3270fb4be66f2d61de31d2e6315dfdb8ebfb2132 Mon Sep 17 00:00:00 2001 From: xyb Date: Wed, 15 Jan 2014 19:58:11 +0800 Subject: int() test passed --- py/strtonum.c | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) (limited to 'py/strtonum.c') diff --git a/py/strtonum.c b/py/strtonum.c index 7cc45bcba4..d322f6d8d5 100644 --- a/py/strtonum.c +++ b/py/strtonum.c @@ -49,16 +49,14 @@ long strtonum(const char *restrict s, int base) { p -= 2; } } else if (base == 8 && c == '0') { - if ((c | 32) == 'o') { - base = 8; - } else { - goto value_error; + c = *(p++); + if ((c | 32) != 'o') { + p -= 2; } } else if (base == 2 && c == '0') { - if ((c | 32) == 'b') { - base = 2; - } else { - goto value_error; + c = *(p++); + if ((c | 32) != 'b') { + p -= 2; } } else { if (base == 0) base = 10; -- cgit v1.2.3