[Scummvm-cvs-logs] scummvm master -> de59c82b488b9590f4ef9d4e1ccd1d3280890981

Strangerke Strangerke at scummvm.org
Tue May 24 07:55:59 CEST 2016


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

Summary:
a923745973 GNAP: Fix some uninitialized variables
d70e3dd0d6 GNAP: Fix out of bound access in alternate font code
afbf1133d3 GNAP: Fix code alignment
de59c82b48 GNAP: Fix more uninitialized variables


Commit: a923745973bfe7d0f1fba8184add7ec9c320c5e5
    https://github.com/scummvm/scummvm/commit/a923745973bfe7d0f1fba8184add7ec9c320c5e5
Author: Strangerke (strangerke at scummvm.org)
Date: 2016-05-24T07:46:19+02:00

Commit Message:
GNAP: Fix some uninitialized variables

Changed paths:
    engines/gnap/gamesys.cpp
    engines/gnap/resource.h



diff --git a/engines/gnap/gamesys.cpp b/engines/gnap/gamesys.cpp
index 4b18fd1..8fcf1dc 100644
--- a/engines/gnap/gamesys.cpp
+++ b/engines/gnap/gamesys.cpp
@@ -58,9 +58,17 @@ GameSys::GameSys(GnapEngine *vm) : _vm(vm) {
 	_frontSurface = nullptr;
 	for (int i = 0; i < kMaxAnimations; ++i) {
 		_animations[i]._sequenceId = -1;
-		_animations[i]._id = 0;
+		_animations[i]._id = -1;
 		_animations[i]._status = 0;
 	}
+	_removeSequenceItems->_sequenceId = -1;
+	_removeSequenceItems->_id = -1;
+	_removeSequenceItems->_forceFrameReset = false;
+	_removeSpriteDrawItems->_id = -1;
+	_removeSpriteDrawItems->_surface = nullptr;
+
+	_grabSpriteSurface1 = _grabSpriteSurface2 = nullptr;
+
 	_screenRect = Common::Rect(0, 0, 800, 600);
 }
 
diff --git a/engines/gnap/resource.h b/engines/gnap/resource.h
index 29bd31c..f4a3669 100644
--- a/engines/gnap/resource.h
+++ b/engines/gnap/resource.h
@@ -59,7 +59,8 @@ struct SequenceAnimation {
 	int16 _framesCount;
 	int16 _maxTotalDuration;
 	SequenceFrame *frames;
-	SequenceAnimation() : frames(nullptr) {}
+
+	SequenceAnimation() : frames(nullptr), _additionalDelay(0), _framesCount(0), _maxTotalDuration(0) {}
 	~SequenceAnimation() { delete[] frames; }
 	void loadFromStream(Common::MemoryReadStream &stream);
 };


Commit: d70e3dd0d6f55685dd236c5205b1accad4352068
    https://github.com/scummvm/scummvm/commit/d70e3dd0d6f55685dd236c5205b1accad4352068
Author: Strangerke (strangerke at scummvm.org)
Date: 2016-05-24T07:46:21+02:00

Commit Message:
GNAP: Fix out of bound access in alternate font code

Changed paths:
    engines/gnap/gamesys.cpp



diff --git a/engines/gnap/gamesys.cpp b/engines/gnap/gamesys.cpp
index 8fcf1dc..80cf689 100644
--- a/engines/gnap/gamesys.cpp
+++ b/engines/gnap/gamesys.cpp
@@ -287,7 +287,7 @@ void GameSys::drawTextToSurface(Graphics::Surface *surface, int x, int y, byte r
 	} else {
 		for (const char *cp = text; *cp != 0; ++cp) {
 			byte c = *cp;
-			if (c < 32 || c > 127)
+			if (c < 32 || c >= 127)
 				c = (byte)'_';
 			c -= 32;
 			int w = _dejaVuSans9ptCharDescriptors[c]._width;
@@ -312,7 +312,7 @@ int GameSys::getTextHeight(const char *text) {
 	byte height = 0;
 	for (const char *cp = text; *cp != 0; ++cp) {
 		byte c = *cp;
-		if (c < 32 || c > 127)
+		if (c < 32 || c >= 127)
 			c = (byte)'_';
 		c -= 32;
 		height = MAX(height, _dejaVuSans9ptCharDescriptors[c]._width);
@@ -324,7 +324,7 @@ int GameSys::getTextWidth(const char *text) {
 	int width = 0;
 	for (const char *cp = text; *cp != 0; ++cp) {
 		byte c = *cp;
-		if (c < 32 || c > 127)
+		if (c < 32 || c >= 127)
 			c = (byte)'_';
 		c -= 32;
 		width += _dejaVuSans9ptCharDescriptors[c]._width + 1;


Commit: afbf1133d33bda71818f398150117f5189337346
    https://github.com/scummvm/scummvm/commit/afbf1133d33bda71818f398150117f5189337346
Author: Strangerke (strangerke at scummvm.org)
Date: 2016-05-24T07:46:23+02:00

Commit Message:
GNAP: Fix code alignment

Changed paths:
    engines/gnap/gamesys.cpp



diff --git a/engines/gnap/gamesys.cpp b/engines/gnap/gamesys.cpp
index 80cf689..bd94558 100644
--- a/engines/gnap/gamesys.cpp
+++ b/engines/gnap/gamesys.cpp
@@ -1052,12 +1052,12 @@ void GameSys::fatUpdateFrame() {
 						}
 						currFrameNum = gfxItem->_currFrameNum;
 						if (animation->_framesCount > currFrameNum) {
-							while (animation->_framesCount > currFrameNum &&
-								animation->frames[currFrameNum]._duration <= duration) {
+							while (animation->_framesCount > currFrameNum
+								&& animation->frames[currFrameNum]._duration <= duration) {
 								if (animation->frames[currFrameNum]._soundId != -1)
 									_soundIds.push_back((gfxItem->_sequenceId & 0xFFFF0000) | animation->frames[currFrameNum]._soundId);
-									duration -= animation->frames[currFrameNum]._duration;
-									++currFrameNum;
+								duration -= animation->frames[currFrameNum]._duration;
+								++currFrameNum;
 							}
 							if (animation->_framesCount > currFrameNum)
 								gfxItem->_currFrame = animation->frames[currFrameNum++];


Commit: de59c82b488b9590f4ef9d4e1ccd1d3280890981
    https://github.com/scummvm/scummvm/commit/de59c82b488b9590f4ef9d4e1ccd1d3280890981
Author: Strangerke (strangerke at scummvm.org)
Date: 2016-05-24T07:46:25+02:00

Commit Message:
GNAP: Fix more uninitialized variables

Changed paths:
    engines/gnap/scenes/arcade.cpp
    engines/gnap/scenes/group1.cpp



diff --git a/engines/gnap/scenes/arcade.cpp b/engines/gnap/scenes/arcade.cpp
index 571fdbf..2966c3e 100644
--- a/engines/gnap/scenes/arcade.cpp
+++ b/engines/gnap/scenes/arcade.cpp
@@ -1020,6 +1020,7 @@ Scene51::Scene51(GnapEngine *vm) : Scene(vm) {
 	_nextDropItemKind = -1;
 	_itemInsertX = -1;
 	_itemInsertDirection = -1;
+	_platypusSequenceId = -1;
 	_platypusNextSequenceId = -1;
 	_platypusJumpSequenceId = -1;
 	_itemsCtr = -1;
diff --git a/engines/gnap/scenes/group1.cpp b/engines/gnap/scenes/group1.cpp
index f76d04c..7ae6062 100644
--- a/engines/gnap/scenes/group1.cpp
+++ b/engines/gnap/scenes/group1.cpp
@@ -4077,8 +4077,10 @@ static const int kS19ShopAssistantSequenceIds[] = {
 
 Scene19::Scene19(GnapEngine *vm) : Scene(vm) {
 	_toyGrabCtr = 0;
-	_pictureSurface = 0;
 	_shopAssistantCtr = 0;
+	_currShopAssistantSequenceId = -1;
+	_nextShopAssistantSequenceId = -1;
+
 	_pictureSurface = nullptr;
 }
 






More information about the Scummvm-git-logs mailing list