diff options
| author | misomosi <misomosispi@gmail.com> | 2024-12-21 16:53:31 -0500 |
|---|---|---|
| committer | misomosi <misomosispi@gmail.com> | 2024-12-21 16:53:31 -0500 |
| commit | 26f9688c69caa1ea8211da7ef072ea6ec292d8f7 (patch) | |
| tree | 13fd11d103d60462801dd6ddeb39b054ad1432a4 | |
| parent | 8f2766c4dccc16277683288fc0d8a8281afa983d (diff) | |
Fix early overwrite of dst w/ exp_u64
| -rw-r--r-- | src/big_int.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/big_int.cpp b/src/big_int.cpp index 8e476f090..0b0a9a400 100644 --- a/src/big_int.cpp +++ b/src/big_int.cpp @@ -251,7 +251,10 @@ gb_internal void big_int_from_string(BigInt *dst, String const &s, bool *success exp *= 10; exp += v; } - big_int_exp_u64(dst, &b, exp, success); + BigInt tmp = {}; + mp_init(&tmp); + big_int_exp_u64(&tmp, &b, exp, success); + big_int_mul_eq(dst, &tmp); } if (is_negative) { |