From 9b5230c60efbb84f292da2c626f9e2a39f5cadbc Mon Sep 17 00:00:00 2001 From: emufan4568 Date: Sun, 21 Aug 2022 13:33:52 +0300 Subject: [PATCH] rasterizer_cache: Always create TextureDownloaderES * It's used when dumping textures on desktop, so create it upfront to avoid null checks --- src/video_core/rasterizer_cache/cached_surface.cpp | 5 ----- src/video_core/rasterizer_cache/rasterizer_cache.cpp | 5 +---- 2 files changed, 1 insertion(+), 9 deletions(-) diff --git a/src/video_core/rasterizer_cache/cached_surface.cpp b/src/video_core/rasterizer_cache/cached_surface.cpp index 136b37df6..d61671790 100644 --- a/src/video_core/rasterizer_cache/cached_surface.cpp +++ b/src/video_core/rasterizer_cache/cached_surface.cpp @@ -260,11 +260,6 @@ void CachedSurface::DumpTexture(GLuint target_tex, u64 tex_hash) { GetTexImageOES conveniently only dumps the specified region, and works on both desktop and ES. */ - // if the backend isn't OpenGL ES, this won't be initialized yet - if (!owner.texture_downloader_es) { - owner.texture_downloader_es = std::make_unique(false); - } - owner.texture_downloader_es->GetTexImage(GL_TEXTURE_2D, 0, GL_RGBA, GL_UNSIGNED_BYTE, height, width, &decoded_texture[0]); state.texture_units[0].texture_2d = old_texture; diff --git a/src/video_core/rasterizer_cache/rasterizer_cache.cpp b/src/video_core/rasterizer_cache/rasterizer_cache.cpp index fe7c8f841..d2ae5aef9 100644 --- a/src/video_core/rasterizer_cache/rasterizer_cache.cpp +++ b/src/video_core/rasterizer_cache/rasterizer_cache.cpp @@ -12,7 +12,6 @@ #include "video_core/renderer_opengl/texture_filters/texture_filterer.h" #include "video_core/renderer_opengl/texture_downloader_es.h" #include "video_core/renderer_opengl/gl_format_reinterpreter.h" -#include "video_core/renderer_opengl/gl_vars.h" namespace OpenGL { @@ -244,9 +243,7 @@ RasterizerCacheOpenGL::RasterizerCacheOpenGL() { texture_filterer = std::make_unique(Settings::values.texture_filter_name, resolution_scale_factor); format_reinterpreter = std::make_unique(); - if (GLES) { - texture_downloader_es = std::make_unique(false); - } + texture_downloader_es = std::make_unique(false); } RasterizerCacheOpenGL::~RasterizerCacheOpenGL() {