diff --git a/mrbgems/mruby-bigint/core/bigint.c b/mrbgems/mruby-bigint/core/bigint.c index ef092d9e4..8b9aa19d9 100644 --- a/mrbgems/mruby-bigint/core/bigint.c +++ b/mrbgems/mruby-bigint/core/bigint.c @@ -730,6 +730,9 @@ mpz_init_set_str(mrb_state *mrb, mpz_t *x, const char *s, mrb_int len, mrb_int b if (*s == '-') { sn = -1; s++; } + else if (*s == '+') { + sn = 1; s++; + } else sn = 1; for (mrb_int i=0; isn = sn; + x->sn = x->sz == 0 ? 0 : sn; return retval; }