diff options
author | tadf <tadf@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2012-11-18 00:26:15 +0000 |
---|---|---|
committer | tadf <tadf@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2012-11-18 00:26:15 +0000 |
commit | 7a1985a96970f7e759b945be74e7a8f41a797cd8 (patch) | |
tree | d1de1561d045fa419cbdb48cd45387ff2a649d2e /complex.c | |
parent | 55915036a6d1edebe739737bb7d910a8851e21e5 (diff) |
trivial changes.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37707 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'complex.c')
-rw-r--r-- | complex.c | 23 |
1 files changed, 12 insertions, 11 deletions
@@ -1,5 +1,5 @@ /* - complex.c: Coded by Tadayoshi Funaba 2008-2011 + complex.c: Coded by Tadayoshi Funaba 2008-2012 This implementation is based on Keiju Ishitsuka's Complex library which is written in ruby. @@ -1626,10 +1626,8 @@ str2num(char *s) { if (strchr(s, '/')) return rb_cstr_to_rat(s, 0); - if (strpbrk(s, ".eE")) { - double d = rb_cstr_to_dbl(s, 0); - return DBL2NUM(d); - } + if (strpbrk(s, ".eE")) + return DBL2NUM(rb_cstr_to_dbl(s, 0)); return rb_cstr_to_inum(s, 10, 0); } @@ -1715,6 +1713,13 @@ read_comp(const char **s, int strict, } } +static void +skip_ws(const char **s) +{ + while (isspace((unsigned char)**s)) + (*s)++; +} + static int parse_comp(const char *s, int strict, VALUE *num) @@ -1724,14 +1729,10 @@ parse_comp(const char *s, int strict, buf = ALLOCA_N(char, strlen(s) + 1); b = buf; - while (isspace((unsigned char)*s)) - s++; - + skip_ws(&s); if (!read_comp(&s, strict, num, &b)) return 0; - - while (isspace((unsigned char)*s)) - s++; + skip_ws(&s); if (strict) if (*s != '\0') |