diff options
| author | Léo Lam <leo@leolam.fr> | 2021-01-28 17:28:21 +0100 |
|---|---|---|
| committer | Léo Lam <leo@leolam.fr> | 2021-04-06 23:27:23 +0200 |
| commit | 1a9e72c9bbed1842621969f035dec47ac75d9db4 (patch) | |
| tree | a0eb66b50fbf87be88d5b25f41bf6084982c42f3 /Source/Core/DiscIO/WIACompression.cpp | |
| parent | 8d21fa56a1133529273d57df06888e42bb63fde7 (diff) | |
DiscIO: Use MathUtil::SaturatingCast
Diffstat (limited to 'Source/Core/DiscIO/WIACompression.cpp')
| -rw-r--r-- | Source/Core/DiscIO/WIACompression.cpp | 10 |
1 files changed, 3 insertions, 7 deletions
diff --git a/Source/Core/DiscIO/WIACompression.cpp b/Source/Core/DiscIO/WIACompression.cpp index 5b5da07a37..17231f63b3 100644 --- a/Source/Core/DiscIO/WIACompression.cpp +++ b/Source/Core/DiscIO/WIACompression.cpp @@ -19,6 +19,7 @@ #include "Common/Assert.h" #include "Common/CommonTypes.h" +#include "Common/MathUtil.h" #include "Common/Swap.h" #include "DiscIO/LaggedFibonacciGenerator.h" @@ -166,18 +167,13 @@ bool Bzip2Decompressor::Decompress(const DecompressionBuffer& in, DecompressionB m_started = true; } - constexpr auto clamped_cast = [](size_t x) { - return static_cast<unsigned int>( - std::min<size_t>(std::numeric_limits<unsigned int>().max(), x)); - }; - char* const in_ptr = reinterpret_cast<char*>(const_cast<u8*>(in.data.data() + *in_bytes_read)); m_stream.next_in = in_ptr; - m_stream.avail_in = clamped_cast(in.bytes_written - *in_bytes_read); + m_stream.avail_in = MathUtil::SaturatingCast<u32>(in.bytes_written - *in_bytes_read); char* const out_ptr = reinterpret_cast<char*>(out->data.data() + out->bytes_written); m_stream.next_out = out_ptr; - m_stream.avail_out = clamped_cast(out->data.size() - out->bytes_written); + m_stream.avail_out = MathUtil::SaturatingCast<u32>(out->data.size() - out->bytes_written); const int result = BZ2_bzDecompress(&m_stream); |
