diff options
author | Richard Henderson <richard.henderson@linaro.org> | 2021-03-14 16:49:30 -0600 |
---|---|---|
committer | Richard Henderson <richard.henderson@linaro.org> | 2021-03-15 12:47:08 -0600 |
commit | 7625a1ed013a042748753750c9d9b1a33c9cd8e0 (patch) | |
tree | d55ac781e64eff379c8cb99dc4af24896850c3bc /tests | |
parent | 51204c2f188ec1e2a38f14718d38a3772f850a4b (diff) |
utils: Use fixed-point arithmetic in qemu_strtosz
Once we've parsed the fractional value, extract it into an integral
64-bit fraction. Perform the scaling with integer arithmetic, and
simplify the overflow detection.
Reviewed-by: Eric Blake <eblake@redhat.com>
Message-Id: <20210315155835.1970210-2-richard.henderson@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/unit/test-cutils.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/tests/unit/test-cutils.c b/tests/unit/test-cutils.c index bad3a60993..e025b54c05 100644 --- a/tests/unit/test-cutils.c +++ b/tests/unit/test-cutils.c @@ -2128,7 +2128,7 @@ static void test_qemu_strtosz_float(void) str = "12.345M"; err = qemu_strtosz(str, &endptr, &res); g_assert_cmpint(err, ==, 0); - g_assert_cmpint(res, ==, (uint64_t) (12.345 * MiB)); + g_assert_cmpint(res, ==, (uint64_t) (12.345 * MiB + 0.5)); g_assert(endptr == str + 7); } |