[Scummvm-git-logs] scummvm master -> c51d5cf6f778e3cdd5410d2e392985d1c3185d7f

a-yyg 76591232+a-yyg at users.noreply.github.com
Sat Aug 7 12:11:18 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:
c51d5cf6f7 SAGA2: Fix BandList loading


Commit: c51d5cf6f778e3cdd5410d2e392985d1c3185d7f
    https://github.com/scummvm/scummvm/commit/c51d5cf6f778e3cdd5410d2e392985d1c3185d7f
Author: a/ (yuri.kgpps at gmail.com)
Date: 2021-08-07T21:10:17+09:00

Commit Message:
SAGA2: Fix BandList loading

Changed paths:
    engines/saga2/band.cpp


diff --git a/engines/saga2/band.cpp b/engines/saga2/band.cpp
index 21d0b3fce4..366148330d 100644
--- a/engines/saga2/band.cpp
+++ b/engines/saga2/band.cpp
@@ -131,6 +131,14 @@ Band *BandList::newBand(BandID id) {
 }
 
  void BandList::addBand(Band *b) {
+	for (int i = 0; i < kNumBands; i++) {
+		if (_list[i] == b) {
+			warning("Band %d (%p) already added", i, (void *)b);
+
+			return;
+		}
+	}
+
 	for (int i = 0; i < kNumBands; i++) {
 		if (!_list[i]) {
 			_list[i] = b;
@@ -236,8 +244,10 @@ void loadBands(Common::InSaveFile *in, int32 chunkSize) {
 
 void cleanupBands(void) {
 	for (int i = 0; i < BandList::kNumBands; i++) {
-		if (g_vm->_bandList->_list[i])
+		if (g_vm->_bandList->_list[i]) {
 			delete g_vm->_bandList->_list[i];
+			g_vm->_bandList->_list[i] = nullptr;
+		}
 	}
 }
 
@@ -284,8 +294,6 @@ Band::Band(Common::InSaveFile *in) {
 
 		debugC(4, kDebugSaveload , "... id = %d", id);
 	}
-
-	g_vm->_bandList->addBand(this);
 }
 
 //----------------------------------------------------------------------




More information about the Scummvm-git-logs mailing list