From 44de995bb6eb57633aec4bd558973163ecaaa780 Mon Sep 17 00:00:00 2001 From: rsn8887 Date: Mon, 6 Mar 2017 08:57:21 -0600 Subject: SDL: Fix trying to init non-supported shaders (#917) --- backends/graphics/psp2sdl/psp2sdl-graphics.cpp | 23 ++++++++------------- .../graphics/surfacesdl/surfacesdl-graphics.cpp | 24 ++++++---------------- 2 files changed, 15 insertions(+), 32 deletions(-) diff --git a/backends/graphics/psp2sdl/psp2sdl-graphics.cpp b/backends/graphics/psp2sdl/psp2sdl-graphics.cpp index fa2adc85e4..b56f13e27a 100644 --- a/backends/graphics/psp2sdl/psp2sdl-graphics.cpp +++ b/backends/graphics/psp2sdl/psp2sdl-graphics.cpp @@ -87,20 +87,15 @@ PSP2SdlGraphicsManager::PSP2SdlGraphicsManager(SdlEventSource *sdlEventSource, S } _videoMode.aspectRatioCorrection = false; - if (g_system->hasFeature(OSystem::kFeatureShader)) { - // shader number 0 is the entry NONE (no shader) - const OSystem::GraphicsMode *p = s_supportedShadersPSP2; - _numShaders = 0; - while (p->name) { - _numShaders++; - p++; - } - _currentShader = ConfMan.getInt("shader"); - if (_currentShader < 0 || _currentShader >= _numShaders) { - _currentShader = 0; - } - } else { - _numShaders = 1; + // shader number 0 is the entry NONE (no shader) + const OSystem::GraphicsMode *p = s_supportedShadersPSP2; + _numShaders = 0; + while (p->name) { + _numShaders++; + p++; + } + _currentShader = ConfMan.getInt("shader"); + if (_currentShader < 0 || _currentShader >= _numShaders) { _currentShader = 0; } diff --git a/backends/graphics/surfacesdl/surfacesdl-graphics.cpp b/backends/graphics/surfacesdl/surfacesdl-graphics.cpp index 692602bf07..690e9a360e 100644 --- a/backends/graphics/surfacesdl/surfacesdl-graphics.cpp +++ b/backends/graphics/surfacesdl/surfacesdl-graphics.cpp @@ -200,24 +200,12 @@ SurfaceSdlGraphicsManager::SurfaceSdlGraphicsManager(SdlEventSource *sdlEventSou _videoMode.filtering = ConfMan.getBool("filtering"); #endif - // Default backend does not have shaders. Disable check. - // TODO: Implement more elegant way. - if (0 && g_system->hasFeature(OSystem::kFeatureShader)) { - // shader number 0 is the entry NONE (no shader) - const OSystem::GraphicsMode *p = s_supportedShaders; - _numShaders = 0; - while (p->name) { - _numShaders++; - p++; - } - _currentShader = ConfMan.getInt("shader"); - if (_currentShader < 0 || _currentShader >= _numShaders) { - _currentShader = 0; - } - } else { - _numShaders = 1; - _currentShader = 0; - } + // the default backend has no shaders + // shader number 0 is the entry NONE (no shader) + // for an example on shader support, + // consult the psp2sdl backend which inherits from this class + _currentShader = 0; + _numShaders = 1; } SurfaceSdlGraphicsManager::~SurfaceSdlGraphicsManager() { -- cgit v1.2.3