diff options
Diffstat (limited to 'src/video_core/renderer_opengl/gl_texture_cache.cpp')
-rw-r--r-- | src/video_core/renderer_opengl/gl_texture_cache.cpp | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/video_core/renderer_opengl/gl_texture_cache.cpp b/src/video_core/renderer_opengl/gl_texture_cache.cpp index 9cafd2983..9ca544ec9 100644 --- a/src/video_core/renderer_opengl/gl_texture_cache.cpp +++ b/src/video_core/renderer_opengl/gl_texture_cache.cpp @@ -554,7 +554,14 @@ void TextureCacheRuntime::Finish() { } StagingBufferMap TextureCacheRuntime::UploadStagingBuffer(size_t size) { - return staging_buffer_pool.RequestUploadBuffer(size); + static StagingBufferMap result; + static size_t last_size = 0; + if (size == last_size) { + return result; + } + last_size = size; + result = staging_buffer_pool.RequestUploadBuffer(size); + return result; } StagingBufferMap TextureCacheRuntime::DownloadStagingBuffer(size_t size) { |