From 3898609ae24e7787d6f6ae71c2424b43102326bf Mon Sep 17 00:00:00 2001 From: Callum Prentice Date: Tue, 11 May 2021 12:58:05 -0700 Subject: Fix for SL-15226 Simple cache viewer: Integer overflow in cache size - via FS:Ansariel --- indra/llfilesystem/lldiskcache.cpp | 2 +- indra/llfilesystem/lldiskcache.h | 2 +- indra/newview/llappviewer.cpp | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/indra/llfilesystem/lldiskcache.cpp b/indra/llfilesystem/lldiskcache.cpp index c9f7684b5a..241c46dc73 100644 --- a/indra/llfilesystem/lldiskcache.cpp +++ b/indra/llfilesystem/lldiskcache.cpp @@ -40,7 +40,7 @@ #include "lldiskcache.h" LLDiskCache::LLDiskCache(const std::string cache_dir, - const int max_size_bytes, + const uintmax_t max_size_bytes, const bool enable_cache_debug_info) : mCacheDir(cache_dir), mMaxSizeBytes(max_size_bytes), diff --git a/indra/llfilesystem/lldiskcache.h b/indra/llfilesystem/lldiskcache.h index 997884da31..c19714434a 100644 --- a/indra/llfilesystem/lldiskcache.h +++ b/indra/llfilesystem/lldiskcache.h @@ -86,7 +86,7 @@ class LLDiskCache : * The maximum size of the cache in bytes - Based on the * setting at 'CacheSize' and 'DiskCachePercentOfTotal' */ - const int max_size_bytes, + const uintmax_t max_size_bytes, /** * A flag that enables extra cache debugging so that * if there are bugs, we can ask uses to enable this diff --git a/indra/newview/llappviewer.cpp b/indra/newview/llappviewer.cpp index a3d20a8e2f..c519e55fc3 100644 --- a/indra/newview/llappviewer.cpp +++ b/indra/newview/llappviewer.cpp @@ -4141,7 +4141,7 @@ bool LLAppViewer::initCache() const unsigned int cache_total_size_mb = gSavedSettings.getU32("CacheSize"); const double disk_cache_percent = gSavedSettings.getF32("DiskCachePercentOfTotal"); const unsigned int disk_cache_mb = cache_total_size_mb * disk_cache_percent / 100; - const unsigned int disk_cache_bytes = disk_cache_mb * 1024 * 1024; + const uintmax_t disk_cache_bytes = disk_cache_mb * 1024 * 1024; const bool enable_cache_debug_info = gSavedSettings.getBOOL("EnableDiskCacheDebugInfo"); bool texture_cache_mismatch = false; -- cgit v1.2.3