[Scummvm-git-logs] scummvm master -> 8a75067db563c8229494292aee53a9fb5885c17d

sev- noreply at scummvm.org
Sun Oct 9 22:17:48 UTC 2022


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

Summary:
17841ca8a2 GUI: Fix crash on switch SDL Surface -> OpenGL
8a75067db5 GUI: Fix behaviour when switching OpenGL -> SDL Surface


Commit: 17841ca8a22f54ad15d23057b6fc251c88a9ca7f
    https://github.com/scummvm/scummvm/commit/17841ca8a22f54ad15d23057b6fc251c88a9ca7f
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2022-10-10T00:15:00+02:00

Commit Message:
GUI: Fix crash on switch SDL Surface -> OpenGL

Changed paths:
    gui/options.cpp


diff --git a/gui/options.cpp b/gui/options.cpp
index 243706dd9c5..8f20ff2cb0b 100644
--- a/gui/options.cpp
+++ b/gui/options.cpp
@@ -1903,6 +1903,11 @@ void OptionsDialog::reflowLayout() {
 
 void OptionsDialog::setupGraphicsTab() {
 	if (_graphicsTabId != -1) {
+		// Since we do not create shader controls, the rebuild is required
+		// Fixes crash when switching from SDL Surface to OpenGL
+		if (!_shader && g_system->hasFeature(OSystem::kFeatureShaders)) {
+			rebuild();
+		}
 		setGraphicSettingsState(_enableGraphicSettings);
 	}
 	if (!_fullscreenCheckbox)


Commit: 8a75067db563c8229494292aee53a9fb5885c17d
    https://github.com/scummvm/scummvm/commit/8a75067db563c8229494292aee53a9fb5885c17d
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2022-10-10T00:15:00+02:00

Commit Message:
GUI: Fix behaviour when switching OpenGL -> SDL Surface

Changed paths:
    gui/options.cpp


diff --git a/gui/options.cpp b/gui/options.cpp
index 8f20ff2cb0b..259c34f2566 100644
--- a/gui/options.cpp
+++ b/gui/options.cpp
@@ -1198,6 +1198,13 @@ void OptionsDialog::setGraphicSettingsState(bool enabled) {
 		_shaderButton->setEnabled(enabled);
 		_shader->setEnabled(enabled);
 		_shaderClearButton->setEnabled(enabled);
+	} else {
+		// Happens when we switch to backend that deosn't support shaders
+		if (_shader) {
+			_shaderButton->setEnabled(false);
+			_shader->setEnabled(false);
+			_shaderClearButton->setEnabled(false);
+		}
 	}
 
 	if (g_system->hasFeature(OSystem::kFeatureFilteringMode))




More information about the Scummvm-git-logs mailing list