diff --git a/src/string.c b/src/string.c index eda4c3fb8..3fbea4c99 100644 --- a/src/string.c +++ b/src/string.c @@ -2145,29 +2145,24 @@ mrb_str_len_to_inum(mrb_state *mrb, const char *str, size_t len, int base, int b } } } - c = *p; - if (badcheck && c == '\0') { - goto bad; - } - c = conv_digit(c); - if (c < 0 || c >= base) { + if (p == pend) { if (badcheck) goto bad; return mrb_fixnum_value(0); } - for ( ;p= base) {