From 728431256853989b63b963fc4816cf255b6ec382 Mon Sep 17 00:00:00 2001 From: degasus Date: Sun, 11 Jan 2015 22:47:40 +0100 Subject: [PATCH] OGL: Warn about wrong texture sizes --- Source/Core/VideoBackends/OGL/TextureCache.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Source/Core/VideoBackends/OGL/TextureCache.cpp b/Source/Core/VideoBackends/OGL/TextureCache.cpp index 4bf70271d1..241b73f719 100644 --- a/Source/Core/VideoBackends/OGL/TextureCache.cpp +++ b/Source/Core/VideoBackends/OGL/TextureCache.cpp @@ -188,6 +188,12 @@ TextureCache::TCacheEntryBase* TextureCache::CreateTexture(unsigned int width, u void TextureCache::TCacheEntry::Load(unsigned int width, unsigned int height, unsigned int expanded_width, unsigned int level) { + if (level >= config.levels) + PanicAlert("Texture only has %d levels, can't update level %d", config.levels, level); + if (width != std::max(1u, config.width >> level) || height != std::max(1u, config.height >> level)) + PanicAlert("size of level %d must be %dx%d, but %dx%d requested", + level, std::max(1u, config.width >> level), std::max(1u, config.height >> level), width, height); + if (pcfmt != PC_TEX_FMT_DXT1) { glActiveTexture(GL_TEXTURE0+9);