From 6d193ffd8b6482cddceb5c9050e36315d99d3363 Mon Sep 17 00:00:00 2001 From: Keith Rothman <537074+litghost@users.noreply.github.com> Date: Wed, 24 Feb 2021 08:52:26 -0800 Subject: Fix some bugs found in review. Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com> --- common/dynamic_bitarray.h | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) (limited to 'common/dynamic_bitarray.h') diff --git a/common/dynamic_bitarray.h b/common/dynamic_bitarray.h index 7a7b2bf9..10a85fbc 100644 --- a/common/dynamic_bitarray.h +++ b/common/dynamic_bitarray.h @@ -39,10 +39,7 @@ template > class DynamicBitarray std::fill(storage.begin(), storage.end(), value ? std::numeric_limits::max() : 0); } - constexpr size_t bits_per_value() const - { - return sizeof(typename Storage::value_type) * std::numeric_limits::digits; - } + constexpr size_t bits_per_value() const { return std::numeric_limits::digits; } bool get(size_t bit) const { @@ -67,7 +64,7 @@ template > class DynamicBitarray void resize(size_t number_bits) { - size_t required_storage = (number_bits + bits_per_value()) / bits_per_value(); + size_t required_storage = (number_bits + bits_per_value() - 1) / bits_per_value(); storage.resize(required_storage); } -- cgit v1.2.3