[Scummvm-git-logs] scummvm branch-2-3 -> 534e7f610c1b35158dd8eb9dda4959f7fe5a891c

aquadran aquadran at gmail.com
Mon Sep 13 05:48:35 UTC 2021


This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
534e7f610c STARK: Added message for not supported renderers


Commit: 534e7f610c1b35158dd8eb9dda4959f7fe5a891c
    https://github.com/scummvm/scummvm/commit/534e7f610c1b35158dd8eb9dda4959f7fe5a891c
Author: Paweł Kołodziejski (aquadran at gmail.com)
Date: 2021-09-13T07:48:29+02:00

Commit Message:
STARK: Added message for not supported renderers

Changed paths:
    engines/stark/gfx/driver.cpp
    engines/stark/stark.cpp


diff --git a/engines/stark/gfx/driver.cpp b/engines/stark/gfx/driver.cpp
index 5c918ca279..617741dc47 100644
--- a/engines/stark/gfx/driver.cpp
+++ b/engines/stark/gfx/driver.cpp
@@ -25,6 +25,7 @@
 #include "engines/stark/gfx/opengls.h"
 
 #include "common/config-manager.h"
+#include "common/translation.h"
 
 #include "graphics/renderer.h"
 #include "graphics/surface.h"
@@ -32,6 +33,8 @@
 #include "graphics/opengl/context.h"
 #endif
 
+#include "gui/error.h"
+
 #include "engines/util.h"
 
 namespace Stark {
@@ -53,13 +56,13 @@ Driver *Driver::create() {
 	}
 #endif
 
+	Driver *driver = nullptr;
+
 	if (matchingRendererType != desiredRendererType && desiredRendererType != Graphics::kRendererTypeDefault) {
 		// Display a warning if unable to use the desired renderer
-		warning("Unable to create a '%s' renderer", rendererConfig.c_str());
+		warning("Unable to match a '%s' renderer", rendererConfig.c_str());
 	}
 
-	Driver *driver = nullptr;
-
 #if defined(USE_GLES2) || defined(USE_OPENGL_SHADERS)
 	bool backendCapableOpenGLShaders = g_system->hasFeature(OSystem::kFeatureOpenGLForGame) && OpenGLContext.shadersSupported;
 	if (backendCapableOpenGLShaders && matchingRendererType == Graphics::kRendererTypeOpenGLShaders) {
@@ -67,13 +70,19 @@ Driver *Driver::create() {
 	}
 #endif
 	if (matchingRendererType == Graphics::kRendererTypeTinyGL) {
-		//driver = CreateTinyGLDriver();
-		error("This game does not currently support software rendering");
+		//driver = new TinyGLDriver();
 	}
 
-	if (driver)
-		return driver;
-	error("No renderers have been found for this game");
+	if (!driver) {
+		if (desiredRendererType != Graphics::kRendererTypeDefault) {
+			warning("Desired a '%s' renderer is not supported", rendererConfig.c_str());
+			GUI::displayErrorDialog(Common::U32String::format("Desired a '%s' renderer is not supported", rendererConfig.c_str()));
+		} else {
+			warning("No renderers have been found for this game");
+			GUI::displayErrorDialog(Common::U32String::format(_("No renderers have been found for this game")));
+		}
+	}
+	return driver;
 }
 
 const Graphics::PixelFormat Driver::getRGBAPixelFormat() {
diff --git a/engines/stark/stark.cpp b/engines/stark/stark.cpp
index d1198455b1..05306dd285 100644
--- a/engines/stark/stark.cpp
+++ b/engines/stark/stark.cpp
@@ -97,6 +97,8 @@ Common::Error StarkEngine::run() {
 
 	// Get the screen prepared
 	Gfx::Driver *gfx = Gfx::Driver::create();
+	if (gfx == nullptr)
+		return Common::kNoError;
 	gfx->init();
 
 	checkRecommendedDatafiles();




More information about the Scummvm-git-logs mailing list