[Scummvm-git-logs] scummvm master -> 24cae0cea1b5ad9db7081895c2ff7a7232abf0b0

aquadran noreply at scummvm.org
Mon Oct 28 09:49:59 UTC 2024


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:
24cae0cea1 WINTERMUTE: Fixes CID: 1564711, 1564703, 1564699, 1564698, 1563428


Commit: 24cae0cea1b5ad9db7081895c2ff7a7232abf0b0
    https://github.com/scummvm/scummvm/commit/24cae0cea1b5ad9db7081895c2ff7a7232abf0b0
Author: Paweł Kołodziejski (aquadran at gmail.com)
Date: 2024-10-28T10:49:51+01:00

Commit Message:
WINTERMUTE: Fixes CID: 1564711, 1564703, 1564699, 1564698, 1563428

Changed paths:
    engines/wintermute/base/gfx/3dloader_3ds.cpp
    engines/wintermute/base/gfx/3dloader_3ds.h
    engines/wintermute/base/gfx/opengl/mesh3ds_opengl.cpp
    engines/wintermute/base/gfx/opengl/mesh3ds_opengl_shader.cpp
    engines/wintermute/base/gfx/xskinmesh.h


diff --git a/engines/wintermute/base/gfx/3dloader_3ds.cpp b/engines/wintermute/base/gfx/3dloader_3ds.cpp
index 4e45b2eb2d2..b78f9e7c345 100644
--- a/engines/wintermute/base/gfx/3dloader_3ds.cpp
+++ b/engines/wintermute/base/gfx/3dloader_3ds.cpp
@@ -81,6 +81,15 @@ Loader3DS::FileObject3DS::FileObject3DS() {
 
 	_lightOff = false;
 	_lightSpotlight = false;
+	_lightColor = 0;
+	_lightHotspot = false;
+	_lightFalloff = false;
+
+	_cameraBank = 0;
+	_cameraLens = 0;
+	_cameraFOV = 0;
+
+	_hidden = false;
 }
 
 
@@ -125,12 +134,10 @@ bool Loader3DS::parseFile(const Common::String &filename) {
 			//////////////////////////////////////////////////////////////////////
 			// object ////////////////////////////////////////////////////////////
 			case NAMED_OBJECT: {
-				Common::String name;
+				obj = new FileObject3DS;
 				for (int8 current = fileStream.readByte(); current != 0; current = fileStream.readByte()) {
-					name.insertChar(current, name.size());
+					obj->_name.insertChar(current, obj->_name.size());
 				}
-				obj = new FileObject3DS;
-				obj->_name = name;
 				_objects.add(obj);
 			}
 			break;
diff --git a/engines/wintermute/base/gfx/3dloader_3ds.h b/engines/wintermute/base/gfx/3dloader_3ds.h
index 7d5b383f395..fbdeee9fd06 100644
--- a/engines/wintermute/base/gfx/3dloader_3ds.h
+++ b/engines/wintermute/base/gfx/3dloader_3ds.h
@@ -59,7 +59,6 @@ public:
 		bool _lightOff;
 		bool _lightSpotlight;
 		bool _hidden;
-		uint16 _numCoordinates;
 		uint16 _numFaces;
 		SFace *_faces;
 		DXVector3 *_vertices;
diff --git a/engines/wintermute/base/gfx/opengl/mesh3ds_opengl.cpp b/engines/wintermute/base/gfx/opengl/mesh3ds_opengl.cpp
index 2933791e556..7d08499a4eb 100644
--- a/engines/wintermute/base/gfx/opengl/mesh3ds_opengl.cpp
+++ b/engines/wintermute/base/gfx/opengl/mesh3ds_opengl.cpp
@@ -30,6 +30,8 @@
 namespace Wintermute {
 
 Mesh3DSOpenGL::Mesh3DSOpenGL(BaseGame *inGame) : Mesh3DS(inGame) {
+	_vertexCount = 0;
+	_vertexData = nullptr;
 }
 
 Mesh3DSOpenGL::~Mesh3DSOpenGL() {
diff --git a/engines/wintermute/base/gfx/opengl/mesh3ds_opengl_shader.cpp b/engines/wintermute/base/gfx/opengl/mesh3ds_opengl_shader.cpp
index 301d717970f..b315d60a7fc 100644
--- a/engines/wintermute/base/gfx/opengl/mesh3ds_opengl_shader.cpp
+++ b/engines/wintermute/base/gfx/opengl/mesh3ds_opengl_shader.cpp
@@ -30,6 +30,9 @@
 namespace Wintermute {
 
 Mesh3DSOpenGLShader::Mesh3DSOpenGLShader(BaseGame *inGame, OpenGL::Shader *shader) : Mesh3DS(inGame), _shader(shader) {
+	_vertexCount = 0;
+	_vertexData = nullptr;
+
 	glGenBuffers(1, &_vertexBuffer);
 	glGenBuffers(1, &_indexBuffer);
 }
diff --git a/engines/wintermute/base/gfx/xskinmesh.h b/engines/wintermute/base/gfx/xskinmesh.h
index c579bcc1973..5d71fcb6310 100644
--- a/engines/wintermute/base/gfx/xskinmesh.h
+++ b/engines/wintermute/base/gfx/xskinmesh.h
@@ -105,7 +105,7 @@ struct DXBone {
 #endif
 
 class DXSkinInfo {
-	uint32 _fvf;
+	uint32 _fvf{};
 	uint32 _numVertices{};
 	uint32 _numBones{};
 	DXBone *_bones{};




More information about the Scummvm-git-logs mailing list