[Scummvm-git-logs] scummvm master -> 0b1bcac6ac292668de5783b6d8ae010cd6e9064f

bluegr noreply at scummvm.org
Fri Oct 21 22:42:03 UTC 2022


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:
0b1bcac6ac DREAMWEB: fix thumbnails when using original save/load screens


Commit: 0b1bcac6ac292668de5783b6d8ae010cd6e9064f
    https://github.com/scummvm/scummvm/commit/0b1bcac6ac292668de5783b6d8ae010cd6e9064f
Author: alxpnv (alxpnv22 at yahoo.com)
Date: 2022-10-22T01:42:00+03:00

Commit Message:
DREAMWEB: fix thumbnails when using original save/load screens

Changed paths:
    engines/dreamweb/dreamweb.cpp
    engines/dreamweb/dreamweb.h
    engines/dreamweb/saveload.cpp


diff --git a/engines/dreamweb/dreamweb.cpp b/engines/dreamweb/dreamweb.cpp
index 9be12996d68..cc82a598e35 100644
--- a/engines/dreamweb/dreamweb.cpp
+++ b/engines/dreamweb/dreamweb.cpp
@@ -270,6 +270,8 @@ DreamWebEngine::DreamWebEngine(OSystem *syst, const DreamWebGameDescription *gam
 
 DreamWebEngine::~DreamWebEngine() {
 	delete _sound;
+	if (_thumbnail.getPixels())
+		_thumbnail.free();
 }
 
 void DreamWebEngine::pauseEngineIntern(bool pause) {
diff --git a/engines/dreamweb/dreamweb.h b/engines/dreamweb/dreamweb.h
index ef63bde06dd..fd53d14a9a5 100644
--- a/engines/dreamweb/dreamweb.h
+++ b/engines/dreamweb/dreamweb.h
@@ -31,6 +31,8 @@
 
 #include "engines/engine.h"
 
+#include "graphics/surface.h"
+
 #include "dreamweb/console.h"
 
 #include "dreamweb/structs.h"
@@ -157,6 +159,7 @@ private:
 	void setSpeed(uint speed);
 
 	const DreamWebGameDescription	*_gameDescription;
+	Graphics::Surface				_thumbnail;
 	Common::RandomSource			_rnd;
 	Common::String _datafilePrefix;
 	Common::String _speechDirName;
diff --git a/engines/dreamweb/saveload.cpp b/engines/dreamweb/saveload.cpp
index e0a6e60d2c9..537931d8295 100644
--- a/engines/dreamweb/saveload.cpp
+++ b/engines/dreamweb/saveload.cpp
@@ -307,6 +307,8 @@ void DreamWebEngine::oldToNames() {
 }
 
 void DreamWebEngine::saveLoad() {
+	if (ConfMan.getBool("originalsaveload"))
+		createThumbnail(_thumbnail);
 	if (_vars._watchingTime || (_pointerMode == 2)) {
 		blank();
 		return;
@@ -563,7 +565,11 @@ void DreamWebEngine::savePosition(unsigned int slot, const char *descbuf) {
 	outSaveFile->writeUint32LE(saveDate);
 	outSaveFile->writeUint32LE(saveTime);
 	outSaveFile->writeUint32LE(playTime);
-	Graphics::saveThumbnail(*outSaveFile);
+
+	if (ConfMan.getBool("originalsaveload"))
+		Graphics::saveThumbnail(*outSaveFile, _thumbnail);
+	else
+		Graphics::saveThumbnail(*outSaveFile);
 
 	outSaveFile->finalize();
 	if (outSaveFile->err()) {




More information about the Scummvm-git-logs mailing list