Author: manx
Date: Fri Mar 15 11:24:25 2024
New Revision: 20333
URL: https://source.openmpt.org/browse/openmpt/?op=revision&rev=20333
Log:
[Fix] mpt/io_read/filedata_base_unseekable.hpp: Avoid integer overflow in EnsureCacheBuffer() when reading unseekable files are close to uint32_max in size.
Modified:
trunk/OpenMPT/src/mpt/io_read/filedata_base_unseekable.hpp
Modified: trunk/OpenMPT/src/mpt/io_read/filedata_base_unseekable.hpp
==============================================================================
--- trunk/OpenMPT/src/mpt/io_read/filedata_base_unseekable.hpp Fri Mar 15 11:23:02 2024 (r20332)
+++ trunk/OpenMPT/src/mpt/io_read/filedata_base_unseekable.hpp Fri Mar 15 11:24:25 2024 (r20333)
@@ -50,7 +50,7 @@
};
void EnsureCacheBuffer(std::size_t requiredbuffersize) const {
- if (cache.size() >= cachesize + requiredbuffersize) {
+ if (cache.size() - cachesize >= requiredbuffersize) {
return;
}
if (cache.size() == 0) {
|