← Commit list

218ed1cf5

Denys Vlasenko
Denys Vlasenko
2018-12-09
SUCCESS Duration: 153s

Subject

bc: further simplify string-to-number conversion code

Binary

No binary (build failed)

Architecture & Compiler Flags

Architecture: x86_64-linux-gnu Compiler: gcc (Ubuntu 11.4.0-1ubuntu1~22.04.3) 11.4.0

—

Build Log

(log yok)

Commit Diff GitHub →

miscutils/bc.c+7 -1
@@ -2246,8 +2246,14 @@ static void bc_num_parseDecimal(BcNum *n, const char *val)
n->rdx = (size_t)((val + len) - (ptr + 1));
if (!zero) {
- for (i = len - 1; i < len; ++n->len, i -= 1 + (i && val[i - 1] == '.'))
+ i = len - 1;
+ for (;;) {
n->num[n->len] = val[i] - '0';
+ ++n->len;
+ skip_dot:
+ if ((ssize_t)--i == (ssize_t)-1) break;
+ if (val[i] == '.') goto skip_dot;
+ }
}
}