diff options
author | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2001-12-27 09:53:54 +0000 |
---|---|---|
committer | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2001-12-27 09:53:54 +0000 |
commit | 3b4641a4bf1fafce6f91295f4340aa3d900faddc (patch) | |
tree | a0be2c7231ea12bd1b234b3fe724dbf1ea65adee /bignum.c | |
parent | d0c78c8567a009626191ea1383599624e169966a (diff) | |
download | ruby-3b4641a4bf1fafce6f91295f4340aa3d900faddc.tar.gz |
* bignum.c (rb_cstr2inum): deny "0_".
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1943 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'bignum.c')
-rw-r--r-- | bignum.c | 15 |
1 files changed, 3 insertions, 12 deletions
@@ -241,18 +241,9 @@ rb_cstr2inum(str, base) } len = 4; } - if (*str == '0') { - do str++; while (*str == '0'); - if (!*str) return INT2FIX(0); - while (*str == '_') str++; - if (!*str) str--; - if (ISSPACE(*str)) { - if (badcheck) { - while (ISSPACE(*str)) str++; - if (*str) goto bad; - } - return INT2FIX(0); - } + if (*str == '0') { /* squeeze preceeding 0s */ + while (*++str == '0'); + --str; } len *= strlen(str)*sizeof(char); |