[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