[Scummvm-git-logs] scummvm master -> 660044616b83eb5481a74cf80dfd2d8ca6e611f9

elasota noreply at scummvm.org
Fri Jul 22 22:51:32 UTC 2022


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

Summary:
15f946d607 MTROPOLIS: Try to quiet Coverity warning again
660044616b MTROPOLIS: Uninit fields cleanup


Commit: 15f946d6078846dc0e53e17693735f3a32643372
    https://github.com/scummvm/scummvm/commit/15f946d6078846dc0e53e17693735f3a32643372
Author: elasota (ejlasota at gmail.com)
Date: 2022-07-22T18:50:46-04:00

Commit Message:
MTROPOLIS: Try to quiet Coverity warning again

Changed paths:
    engines/mtropolis/runtime.cpp


diff --git a/engines/mtropolis/runtime.cpp b/engines/mtropolis/runtime.cpp
index 69d7c796fad..49e94c52ec2 100644
--- a/engines/mtropolis/runtime.cpp
+++ b/engines/mtropolis/runtime.cpp
@@ -4116,15 +4116,15 @@ void Runtime::drawFrame() {
 	}
 
 	const size_t numWindows = _windows.size();
-	WindowSortingBucket singleBucket;
+	WindowSortingBucket singleBucket[1];
 	Common::Array<WindowSortingBucket> multipleBuckets;
-	WindowSortingBucket *sortedBuckets = &singleBucket;
+	WindowSortingBucket *sortedBuckets = singleBucket;
 
 	if (numWindows < 2) {
-		sortedBuckets = &singleBucket;
+		sortedBuckets = singleBucket;
 
-		singleBucket.originalIndex = 0;
-		singleBucket.window = _windows[0].get();
+		singleBucket[0].originalIndex = 0;
+		singleBucket[0].window = _windows[0].get();
 	} else {
 		multipleBuckets.resize(numWindows);
 		sortedBuckets = &multipleBuckets[0];


Commit: 660044616b83eb5481a74cf80dfd2d8ca6e611f9
    https://github.com/scummvm/scummvm/commit/660044616b83eb5481a74cf80dfd2d8ca6e611f9
Author: elasota (ejlasota at gmail.com)
Date: 2022-07-22T18:51:05-04:00

Commit Message:
MTROPOLIS: Uninit fields cleanup

Changed paths:
    engines/mtropolis/boot.cpp
    engines/mtropolis/data.cpp
    engines/mtropolis/data.h
    engines/mtropolis/plugin/obsidian.cpp
    engines/mtropolis/plugin/standard.cpp
    engines/mtropolis/plugin/standard_data.cpp
    engines/mtropolis/plugin/standard_data.h


diff --git a/engines/mtropolis/boot.cpp b/engines/mtropolis/boot.cpp
index e15a4c3a832..93854b70a27 100644
--- a/engines/mtropolis/boot.cpp
+++ b/engines/mtropolis/boot.cpp
@@ -57,6 +57,8 @@ struct FileIdentification {
 		char debug[4];
 	};
 
+	FileIdentification();
+
 	Common::String fileName;
 	FileCategory category;
 
@@ -66,6 +68,11 @@ struct FileIdentification {
 	Common::SharedPtr<Common::SeekableReadStream> stream;
 };
 
+FileIdentification::FileIdentification() : category(kFileCategoryUnknown) {
+	macType.value = 0;
+	macCreator.value = 0;
+}
+
 static void initResManForFile(FileIdentification &f) {
 	if (!f.resMan) {
 		f.resMan.reset(new Common::MacResManager());
diff --git a/engines/mtropolis/data.cpp b/engines/mtropolis/data.cpp
index c043b19a750..5b136683d9e 100644
--- a/engines/mtropolis/data.cpp
+++ b/engines/mtropolis/data.cpp
@@ -317,6 +317,15 @@ bool Rect::load(DataReader &reader) {
 		return false;
 }
 
+Rect Rect::createDefault() {
+	Rect rect;
+	rect.top = 0;
+	rect.bottom = 0;
+	rect.left = 0;
+	rect.right = 0;
+	return rect;
+}
+
 bool Rect::toScummVMRect(Common::Rect &outRect) const {
 	if (left > right || top > bottom)
 		return false;
@@ -332,6 +341,13 @@ bool Rect::toScummVMRectUnchecked(Common::Rect &outRect) const {
 	return true;
 }
 
+Point Point::createDefault() {
+	Point pt;
+	pt.x = 0;
+	pt.y = 0;
+	return pt;
+}
+
 bool Point::load(DataReader &reader) {
 	if (reader.getProjectFormat() == kProjectFormatMacintosh)
 		return reader.readS16(y) && reader.readS16(x);
@@ -346,6 +362,13 @@ bool Point::toScummVMPoint(Common::Point &outPoint) const {
 	return true;
 }
 
+Event Event::createDefault() {
+	Event evt;
+	evt.eventID = 0;
+	evt.eventInfo = 0;
+	return evt;
+}
+
 bool Event::load(DataReader& reader) {
 	return reader.readU32(eventID) && reader.readU32(eventInfo);
 }
@@ -581,7 +604,7 @@ ProjectLabelMap::LabelTree::~LabelTree() {
 }
 
 ProjectLabelMap::SuperGroup::SuperGroup()
-	: tree(nullptr) {
+	: nameLength(0), id(0), unknown2(0), numChildren(0), tree(nullptr) {
 }
 
 ProjectLabelMap::SuperGroup::~SuperGroup() {
@@ -644,6 +667,10 @@ DataReadErrorCode ProjectHeader::load(DataReader &reader) {
 	return kDataReadErrorNone;
 }
 
+PresentationSettings::PresentationSettings()
+	: persistFlags(0), dimensions(Point::createDefault()), sizeIncludingTag(0), unknown1{0, 0}, bitsPerPixel(0), unknown4(0) {
+}
+
 DataReadErrorCode PresentationSettings::load(DataReader &reader) {
 	if (_revision != 2)
 		return kDataReadErrorUnsupportedRevision;
@@ -662,6 +689,12 @@ DataReadErrorCode PresentationSettings::load(DataReader &reader) {
 	return kDataReadErrorNone;
 }
 
+AssetCatalog::AssetInfo::AssetInfo() : flags1(0), nameLength(0), alwaysZero(0), unknown1(0), filePosition(0), assetType(0), flags2(0) {
+}
+
+AssetCatalog::AssetCatalog() : persistFlags(0), totalNameSizePlus22(0), unknown1{0, 0, 0, 0}, numAssets(0) {
+}
+
 DataReadErrorCode AssetCatalog::load(DataReader& reader) {
 	if (_revision != 4)
 		return kDataReadErrorUnsupportedRevision;
@@ -686,6 +719,9 @@ DataReadErrorCode AssetCatalog::load(DataReader& reader) {
 	return kDataReadErrorNone;
 }
 
+Unknown19::Unknown19() : persistFlags(0), sizeIncludingTag(0), unknown1{0, 0} {
+}
+
 DataReadErrorCode Unknown19::load(DataReader &reader) {
 	if (_revision != 0)
 		return kDataReadErrorUnsupportedRevision;
@@ -696,6 +732,12 @@ DataReadErrorCode Unknown19::load(DataReader &reader) {
 	return kDataReadErrorNone;
 }
 
+StructuralDef::StructuralDef() : structuralFlags(0) {
+}
+
+ProjectStructuralDef::ProjectStructuralDef() : unknown1(0), sizeIncludingTag(0), guid(0), otherFlags(0), lengthOfName(0) {
+}
+
 DataReadErrorCode ProjectStructuralDef::load(DataReader &reader) {
 	if (_revision != 1 && _revision != 2)
 		return kDataReadErrorUnsupportedRevision;
@@ -707,6 +749,10 @@ DataReadErrorCode ProjectStructuralDef::load(DataReader &reader) {
 	return kDataReadErrorNone;
 }
 
+SectionStructuralDef::SectionStructuralDef()
+	: sizeIncludingTag(0), guid(0), lengthOfName(0), otherFlags(0), unknown4(0), sectionID(0), segmentID(0) {
+}
+
 DataReadErrorCode SectionStructuralDef::load(DataReader &reader) {
 	if (_revision != 1)
 		return kDataReadErrorUnsupportedRevision;
@@ -719,6 +765,10 @@ DataReadErrorCode SectionStructuralDef::load(DataReader &reader) {
 	return kDataReadErrorNone;
 }
 
+SubsectionStructuralDef::SubsectionStructuralDef()
+	: structuralFlags(0), sizeIncludingTag(0), guid(0), lengthOfName(0), otherFlags(0), sectionID(0) {
+}
+
 DataReadErrorCode SubsectionStructuralDef::load(DataReader &reader) {
 	if (_revision != 0)
 		return kDataReadErrorUnsupportedRevision;
@@ -731,6 +781,11 @@ DataReadErrorCode SubsectionStructuralDef::load(DataReader &reader) {
 	return kDataReadErrorNone;
 }
 
+GraphicElement::GraphicElement()
+	: sizeIncludingTag(0), guid(0), lengthOfName(0), elementFlags(0), layer(0), sectionID(0),
+	  rect1(Rect::createDefault()), rect2(Rect::createDefault()), streamLocator(0), unknown11{0, 0, 0, 0} {
+}
+
 DataReadErrorCode GraphicElement::load(DataReader& reader) {
 	if (_revision != 1)
 		return kDataReadErrorUnsupportedRevision;
@@ -919,13 +974,9 @@ DataReadErrorCode ProjectCatalog::load(DataReader &reader) {
 	return kDataReadErrorNone;
 }
 
-StreamHeader::StreamHeader() : marker(0), sizeIncludingTag(0), unknown2(0) {
-	for (char &v : this->name)
-		v = 0;
-	for (uint8 &v : this->projectID)
-		v = 0;
-	for (uint8 &v : this->unknown1)
-		v = 0;
+StreamHeader::StreamHeader()
+	: marker(0), sizeIncludingTag(0), unknown2(0), name{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
+	  projectID{0, 0}, unknown1{0, 0, 0, 0} {
 }
 
 DataReadErrorCode StreamHeader::load(DataReader& reader) {
diff --git a/engines/mtropolis/data.h b/engines/mtropolis/data.h
index cf0f9a6760d..b5f27eeb044 100644
--- a/engines/mtropolis/data.h
+++ b/engines/mtropolis/data.h
@@ -215,6 +215,7 @@ private:
 
 struct Rect {
 	bool load(DataReader &reader);
+	static Rect createDefault();
 
 	bool toScummVMRect(Common::Rect &outRect) const;
 	bool toScummVMRectUnchecked(Common::Rect &outRect) const;
@@ -229,12 +230,15 @@ struct Point {
 	bool load(DataReader &reader);
 	bool toScummVMPoint(Common::Point &outPoint) const;
 
+	static Point createDefault();
+
 	int16 x;
 	int16 y;
 };
 
 struct Event {
 	bool load(DataReader &reader);
+	static Event createDefault();
 
 	uint32 eventID;
 	uint32 eventInfo;
@@ -439,6 +443,8 @@ private:
 };
 
 struct PresentationSettings : public DataObject {
+	PresentationSettings();
+
 	uint32 persistFlags;
 	uint32 sizeIncludingTag;
 	uint8 unknown1[2];
@@ -457,6 +463,8 @@ struct AssetCatalog : public DataObject {
 	};
 
 	struct AssetInfo {
+		AssetInfo();
+
 		uint32 flags1;
 		uint16 nameLength;
 		uint16 alwaysZero;
@@ -467,6 +475,8 @@ struct AssetCatalog : public DataObject {
 		Common::String name;
 	};
 
+	AssetCatalog();
+
 	uint32 persistFlags;
 	uint32 totalNameSizePlus22;
 	uint8 unknown1[4];
@@ -478,6 +488,8 @@ protected:
 };
 
 struct Unknown19 : public DataObject {
+	Unknown19();
+
 	uint32 persistFlags;
 	uint32 sizeIncludingTag;
 	uint8 unknown1[2];
@@ -487,10 +499,14 @@ protected:
 };
 
 struct StructuralDef : public DataObject {
+	StructuralDef();
+
 	uint32 structuralFlags;
 };
 
 struct ProjectStructuralDef : public DataObject {
+	ProjectStructuralDef();
+
 	uint32 unknown1; // Seems to always be 0x16 or 0x9
 	uint32 sizeIncludingTag;
 	uint32 guid;
@@ -504,6 +520,8 @@ protected:
 };
 
 struct SectionStructuralDef : public StructuralDef {
+	SectionStructuralDef();
+
 	uint32 sizeIncludingTag;
 	uint32 guid;
 	uint16 lengthOfName;
@@ -519,6 +537,8 @@ protected:
 };
 
 struct SubsectionStructuralDef : public StructuralDef {
+	SubsectionStructuralDef();
+
 	uint32 structuralFlags;
 	uint32 sizeIncludingTag;
 	uint32 guid;
@@ -582,6 +602,8 @@ enum SceneTransitionDirection {
 } // End of namespace SceneTransitionDirections
 
 struct GraphicElement : public StructuralDef {
+	GraphicElement();
+
 	// Possible element flags: NotDirectToScreen, CacheBitmap, Hidden
 	uint32 sizeIncludingTag;
 	uint32 guid;
diff --git a/engines/mtropolis/plugin/obsidian.cpp b/engines/mtropolis/plugin/obsidian.cpp
index 31e644cd7e4..50795842d98 100644
--- a/engines/mtropolis/plugin/obsidian.cpp
+++ b/engines/mtropolis/plugin/obsidian.cpp
@@ -30,8 +30,8 @@ namespace MTropolis {
 
 namespace Obsidian {
 
-MovementModifier::MovementModifier() : _enableWhen(Event::create()), _disableWhen(Event::create()), _triggerEvent(Event::create()),
-	_moveStartTime(0), _runtime(nullptr) {
+MovementModifier::MovementModifier() : _type(false), _rate(0), _frequency(0),
+	_enableWhen(Event::create()), _disableWhen(Event::create()), _triggerEvent(Event::create()), _moveStartTime(0), _runtime(nullptr) {
 }
 
 MovementModifier::~MovementModifier() {
diff --git a/engines/mtropolis/plugin/standard.cpp b/engines/mtropolis/plugin/standard.cpp
index 31518078438..dca08eb54bb 100644
--- a/engines/mtropolis/plugin/standard.cpp
+++ b/engines/mtropolis/plugin/standard.cpp
@@ -1724,6 +1724,7 @@ MiniscriptInstructionOutcome STransCtModifier::scriptSetSteps(MiniscriptThread *
 
 MediaCueMessengerModifier::MediaCueMessengerModifier() : _isActive(false), _cueSourceType(kCueSourceInteger) {
 	_mediaCue.sourceModifier = this;
+	memset(&this->_cueSource, 0, sizeof(this->_cueSource));
 }
 
 bool MediaCueMessengerModifier::load(const PlugInModifierLoaderContext &context, const Data::Standard::MediaCueMessengerModifier &data) {
@@ -2265,8 +2266,10 @@ bool ObjectReferenceVariableModifier::SaveLoad::loadInternal(Common::ReadStream
 
 
 MidiModifier::MidiModifier() : _executeWhen(Event::create()), _terminateWhen(Event::create()),
-	_mode(kModeFile), _volume(100), _mutedTracks(0), _singleNoteChannel(0), _singleNoteNote(0),
-	_plugIn(nullptr), _filePlayer(nullptr), _notePlayer(nullptr), _runtime(nullptr) {
+							   _mode(kModeFile), _volume(100), _mutedTracks(0), _singleNoteChannel(0), _singleNoteNote(0),
+							   _plugIn(nullptr), _filePlayer(nullptr), _notePlayer(nullptr), _runtime(nullptr) {
+
+	memset(&this->_modeSpecific, 0, sizeof(this->_modeSpecific));
 }
 
 MidiModifier::~MidiModifier() {
diff --git a/engines/mtropolis/plugin/standard_data.cpp b/engines/mtropolis/plugin/standard_data.cpp
index 5f18d9f2f4d..29011b102a9 100644
--- a/engines/mtropolis/plugin/standard_data.cpp
+++ b/engines/mtropolis/plugin/standard_data.cpp
@@ -28,6 +28,11 @@ namespace Data {
 
 namespace Standard {
 
+CursorModifier::CursorModifier()
+	: unknown1(0), applyWhen(Event::createDefault()), unknown2(0), removeWhen(Event::createDefault()),
+	  unknown3(0), unknown4{0, 0, 0, 0}, cursorID(0) {
+}
+
 DataReadErrorCode CursorModifier::load(PlugIn &plugIn, const PlugInModifier &prefix, DataReader &reader) {
 	if (prefix.plugInRevision != 1)
 		return kDataReadErrorUnsupportedRevision;
@@ -51,6 +56,10 @@ DataReadErrorCode STransCtModifier::load(PlugIn &plugIn, const PlugInModifier &p
 	return kDataReadErrorNone;
 }
 
+MediaCueMessengerModifier::MediaCueMessengerModifier()
+	: unknown1(0), destination(0), unknown2(0) {
+}
+
 DataReadErrorCode MediaCueMessengerModifier::load(PlugIn &plugIn, const PlugInModifier &prefix, DataReader &reader) {
 	if (prefix.plugInRevision != 1)
 		return kDataReadErrorUnsupportedRevision;
@@ -81,6 +90,7 @@ DataReadErrorCode ObjectReferenceVariableModifier::load(PlugIn &plugIn, const Pl
 }
 
 MidiModifier::MidiModifier() : embeddedFlag(0) {
+	memset(&this->modeSpecific, 0, sizeof(this->modeSpecific));
 }
 
 DataReadErrorCode MidiModifier::load(PlugIn &plugIn, const PlugInModifier &prefix, DataReader &reader) {
@@ -120,10 +130,8 @@ DataReadErrorCode MidiModifier::load(PlugIn &plugIn, const PlugInModifier &prefi
 	return kDataReadErrorNone;
 }
 
-ListVariableModifier::ListVariableModifier() : unknown1(0), contentsType(0),
+ListVariableModifier::ListVariableModifier() : unknown1(0), contentsType(0), unknown2{0, 0, 0, 0},
 	havePersistentData(false), numValues(0), values(nullptr), persistentValuesGarbled(false) {
-	for (uint8 &v : unknown2)
-		v = 0;
 }
 
 ListVariableModifier::~ListVariableModifier() {
diff --git a/engines/mtropolis/plugin/standard_data.h b/engines/mtropolis/plugin/standard_data.h
index bf250848f6c..ca72b07dcfb 100644
--- a/engines/mtropolis/plugin/standard_data.h
+++ b/engines/mtropolis/plugin/standard_data.h
@@ -31,6 +31,8 @@ namespace Data {
 namespace Standard {
 
 struct CursorModifier : public PlugInModifierData {
+	CursorModifier();
+
 	uint16 unknown1;
 	Event applyWhen;
 	uint16 unknown2;
@@ -70,6 +72,8 @@ struct MediaCueMessengerModifier : public PlugInModifierData {
 		kTriggerTimingEnd = 2,
 	};
 
+	MediaCueMessengerModifier();
+
 	PlugInTypeTaggedValue enableWhen;
 	PlugInTypeTaggedValue disableWhen;
 	PlugInTypeTaggedValue sendEvent;




More information about the Scummvm-git-logs mailing list