Added static assert

This commit is contained in:
Nikita Mikhaylov 2021-08-25 21:11:45 +00:00
parent 28d70dae43
commit f99d7d89b8

View File

@ -476,14 +476,14 @@ bool NO_INLINE decompressImpl(
// Due to implementation specifics the copy length is always a multiple of copy_amount
size_t real_length = 0;
static_assert(copy_amount == 8 || copy_amount == 16 || copy_amount == 32);
if constexpr (copy_amount == 8)
real_length = (((length >> 3) + 1) * 8);
else if constexpr (copy_amount == 16)
real_length = (((length >> 4) + 1) * 16);
else if constexpr (copy_amount == 32)
real_length = (((length >> 5) + 1) * 32);
else
throw std::runtime_error("Compile error!");
if (unlikely(ip + real_length >= input_end + ADDITIONAL_BYTES_AT_END_OF_BUFFER))
return false;