[Scummvm-git-logs] scummvm master -> 5476fb3e1ed4a44c882bd4a034e969dd7fbd7c30

sev- noreply at scummvm.org
Sun Mar 19 14:49:34 UTC 2023


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:
5476fb3e1e SCUMM: Fix crash when compressded files are detected


Commit: 5476fb3e1ed4a44c882bd4a034e969dd7fbd7c30
    https://github.com/scummvm/scummvm/commit/5476fb3e1ed4a44c882bd4a034e969dd7fbd7c30
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2023-03-19T12:27:17+01:00

Commit Message:
SCUMM: Fix crash when compressded files are detected

We call Dialog::runModal() which in turn, calls pauseEngine().

At this point, SMUSH player is not yet initialized, but our implementation
calls _splayer->pause() which leads to a crash on Android.

Changed paths:
    engines/scumm/scumm.cpp


diff --git a/engines/scumm/scumm.cpp b/engines/scumm/scumm.cpp
index 7ef252471c6..4f84a6419c6 100644
--- a/engines/scumm/scumm.cpp
+++ b/engines/scumm/scumm.cpp
@@ -3412,10 +3412,12 @@ void ScummEngine::pauseEngineIntern(bool pause) {
 
 #ifdef ENABLE_SCUMM_7_8
 void ScummEngine_v7::pauseEngineIntern(bool pause) {
-	if (pause) {
-		_splayer->pause();
-	} else {
-		_splayer->unpause();
+	if (_splayer) { // We may call it from setupScumm() before _splayer is inited
+		if (pause) {
+			_splayer->pause();
+		} else {
+			_splayer->unpause();
+		}
 	}
 
 	ScummEngine::pauseEngineIntern(pause);




More information about the Scummvm-git-logs mailing list