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

digitall dgturner at iee.org
Sun Aug 25 10:11:50 CEST 2019


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:
0c479251c7 TINSEL: Fix GCC Compilation Warnings


Commit: 0c479251c794f536c9bcaf18c2ce10fcb1537be2
    https://github.com/scummvm/scummvm/commit/0c479251c794f536c9bcaf18c2ce10fcb1537be2
Author: D G Turner (digitall at scummvm.org)
Date: 2019-08-25T09:09:26+01:00

Commit Message:
TINSEL: Fix GCC Compilation Warnings

These are also associated with memset on non-trivial structures.

Changed paths:
    engines/tinsel/object.cpp
    engines/tinsel/object.h


diff --git a/engines/tinsel/object.cpp b/engines/tinsel/object.cpp
index caf41ab8..38d44d6 100644
--- a/engines/tinsel/object.cpp
+++ b/engines/tinsel/object.cpp
@@ -114,7 +114,7 @@ OBJECT *AllocObject() {
 	pFreeObjects = pObj->pNext;
 
 	// clear out object
-	memset(pObj, 0, sizeof(OBJECT));
+	pObj->reset();
 
 	// set default drawing mode and set changed bit
 	pObj->flags = DMA_WNZ | DMA_CHANGED;
diff --git a/engines/tinsel/object.h b/engines/tinsel/object.h
index 097e187..351b4d3 100644
--- a/engines/tinsel/object.h
+++ b/engines/tinsel/object.h
@@ -92,6 +92,33 @@ struct OBJECT {
 	SCNHANDLE hShape;	///< objects current animation frame
 	SCNHANDLE hMirror;	///< objects previous animation frame
 	int oid;			///< object identifier
+
+	void reset() {
+		pNext = nullptr;
+		pSlave = nullptr;
+		//pOnDispList = nullptr;
+		//xVel = 0;
+		//yVel = 0;
+		xPos = 0;
+		yPos = 0;
+		zPos = 0;
+		rcPrev.top = 0;
+		rcPrev.left = 0;
+		rcPrev.bottom = 0;
+		rcPrev.right = 0;
+		flags = 0;
+		pPal = nullptr;
+		constant = 0;
+		width = 0;
+		height = 0;
+		hBits = 0;
+		hImg = 0;
+		hShape = 0;
+		hMirror = 0;
+		oid = 0;
+	}
+
+	OBJECT() { reset(); }
 };
 typedef OBJECT *POBJECT;
 





More information about the Scummvm-git-logs mailing list