[Scummvm-git-logs] scummvm master -> e14afbf282595b5e6167f3aac03b0de994869b60
athrxx
noreply at scummvm.org
Tue Sep 20 21:10:40 UTC 2022
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:
e14afbf282 KYRA: init non-initialized member vars
Commit: e14afbf282595b5e6167f3aac03b0de994869b60
https://github.com/scummvm/scummvm/commit/e14afbf282595b5e6167f3aac03b0de994869b60
Author: athrxx (athrxx at scummvm.org)
Date: 2022-09-20T23:10:27+02:00
Commit Message:
KYRA: init non-initialized member vars
Changed paths:
engines/kyra/engine/eob.cpp
engines/kyra/engine/eobcommon.cpp
engines/kyra/graphics/screen_eob_amiga.cpp
engines/kyra/graphics/screen_eob_towns.cpp
engines/kyra/sequence/sequences_darkmoon.cpp
engines/kyra/sound/sound_pc_v1.cpp
engines/kyra/sound/sound_towns_darkmoon.cpp
diff --git a/engines/kyra/engine/eob.cpp b/engines/kyra/engine/eob.cpp
index fc3cd2b0904..5db89d7fd43 100644
--- a/engines/kyra/engine/eob.cpp
+++ b/engines/kyra/engine/eob.cpp
@@ -56,8 +56,8 @@ EoBEngine::EoBEngine(OSystem *system, const GameFlags &flags)
_invSmallDigits = _weaponSlotShapes = 0;
_useMainMenuGUISettings = false;
_addrTbl1 = _textFieldPattern = 0;
- _playFldPattern1 = _invPattern = _statsPattern;
- _playFldPattern2 = _tempPattern = 0;
+ _playFldPattern1 = _invPattern = _statsPattern = nullptr;
+ _playFldPattern2 = _tempPattern = nullptr;
_ttlCfg = 0;
_xdth = false;
diff --git a/engines/kyra/engine/eobcommon.cpp b/engines/kyra/engine/eobcommon.cpp
index 1f89bc2b2cc..c96081614bd 100644
--- a/engines/kyra/engine/eobcommon.cpp
+++ b/engines/kyra/engine/eobcommon.cpp
@@ -246,6 +246,7 @@ EoBCoreEngine::EoBCoreEngine(OSystem *system, const GameFlags &flags) : KyraRpgE
_levelMaps = 0;
_closeSpellbookAfterUse = false;
_wndBackgrnd = 0;
+ _ascii2SjisTables = _ascii2SjisTables2 = _mageSpellList2 = _clericSpellList2 = nullptr;
memset(_cgaMappingLevel, 0, sizeof(_cgaMappingLevel));
memset(_expRequirementTables, 0, sizeof(_expRequirementTables));
@@ -255,6 +256,7 @@ EoBCoreEngine::EoBCoreEngine(OSystem *system, const GameFlags &flags) : KyraRpgE
memset(_scriptTimers, 0, sizeof(_scriptTimers));
memset(_monsterBlockPosArray, 0, sizeof(_monsterBlockPosArray));
memset(_foundMonstersArray, 0, sizeof(_foundMonstersArray));
+ memset(_palette16c, 0, sizeof(_palette16c));
#define DWM0 _dscWallMapping.push_back(0)
#define DWM(x) _dscWallMapping.push_back(&_sceneDrawVar##x)
diff --git a/engines/kyra/graphics/screen_eob_amiga.cpp b/engines/kyra/graphics/screen_eob_amiga.cpp
index 66717fa286e..d11ffab8cd7 100644
--- a/engines/kyra/graphics/screen_eob_amiga.cpp
+++ b/engines/kyra/graphics/screen_eob_amiga.cpp
@@ -162,7 +162,7 @@ void Screen_EoB::setDualPalettes(Palette &top, Palette &bottom) {
enableDualPaletteMode(120);
}
-AmigaDOSFont::AmigaDOSFont(Resource *res, bool needsLocalizedFont) : _res(res), _needsLocalizedFont(needsLocalizedFont), _width(0), _height(0), _first(0), _last(0), _content(0), _numElements(0), _selectedElement(0), _maxPathLen(256) {
+AmigaDOSFont::AmigaDOSFont(Resource *res, bool needsLocalizedFont) : _res(res), _needsLocalizedFont(needsLocalizedFont), _width(0), _height(0), _first(0), _last(0), _content(0), _numElements(0), _selectedElement(0), _maxPathLen(256), _colorMap(nullptr) {
assert(_res);
}
diff --git a/engines/kyra/graphics/screen_eob_towns.cpp b/engines/kyra/graphics/screen_eob_towns.cpp
index 754e83d366a..a69616c1b93 100644
--- a/engines/kyra/graphics/screen_eob_towns.cpp
+++ b/engines/kyra/graphics/screen_eob_towns.cpp
@@ -119,7 +119,7 @@ void SJISFontLarge::drawChar(uint16 c, byte *dst, int pitch, int) const {
_font->drawChar(dst, c, 320, 1, _colorMap[1], _colorMap[0], 320, 200);
}
-SJISFont12x12::SJISFont12x12(const uint16 *searchTable) : _height(6), _width(6), _data(0) {
+SJISFont12x12::SJISFont12x12(const uint16 *searchTable) : _height(6), _width(6), _data(0), _colorMap(nullptr) {
assert(searchTable);
for (int i = 0; i < 148; i++)
_searchTable[searchTable[i]] = i + 1;
diff --git a/engines/kyra/sequence/sequences_darkmoon.cpp b/engines/kyra/sequence/sequences_darkmoon.cpp
index 86103823ac7..b10824b406d 100644
--- a/engines/kyra/sequence/sequences_darkmoon.cpp
+++ b/engines/kyra/sequence/sequences_darkmoon.cpp
@@ -1125,7 +1125,7 @@ void DarkMoonEngine::seq_playCredits(DarkmoonSequenceHelper *sq, const uint8 *da
delete[] items[i].str;
}
-DarkmoonSequenceHelper::DarkmoonSequenceHelper(OSystem *system, DarkMoonEngine *vm, Screen_EoB *screen, DarkmoonSequenceHelper::Mode mode) : _system(system), _vm(vm), _screen(screen) {
+DarkmoonSequenceHelper::DarkmoonSequenceHelper(OSystem *system, DarkMoonEngine *vm, Screen_EoB *screen, DarkmoonSequenceHelper::Mode mode) : _system(system), _vm(vm), _screen(screen), _fadePalIndex(0) {
init(mode);
}
diff --git a/engines/kyra/sound/sound_pc_v1.cpp b/engines/kyra/sound/sound_pc_v1.cpp
index 05083ded1d6..1890440cf6b 100644
--- a/engines/kyra/sound/sound_pc_v1.cpp
+++ b/engines/kyra/sound/sound_pc_v1.cpp
@@ -40,7 +40,7 @@ const int SoundPC_v1::_kyra1SoundTriggers[] = {
const int SoundPC_v1::_kyra1NumSoundTriggers = ARRAYSIZE(SoundPC_v1::_kyra1SoundTriggers);
SoundPC_v1::SoundPC_v1(KyraEngine_v1 *vm, Audio::Mixer *mixer, kType type)
- : Sound(vm, mixer), _driver(nullptr), _trackEntries(), _soundDataPtr(nullptr), _type(type) {
+ : Sound(vm, mixer), _driver(nullptr), _trackEntries(), _soundDataPtr(nullptr), _type(type), _version(-1) {
memset(_trackEntries, 0, sizeof(_trackEntries));
_soundTriggers = nullptr;
@@ -76,10 +76,11 @@ SoundPC_v1::SoundPC_v1(KyraEngine_v1 *vm, Audio::Mixer *mixer, kType type)
// Correct the type to someting we support. NullSound is treated as a silent AdLib driver.
if (_type != kAdLib && _type != kPCSpkr && _type != kPCjr)
_type = kAdLib;
- _driver = (type == kAdLib) ? PCSoundDriver::createAdLib(mixer, _version) : PCSoundDriver::createPCSpk(mixer, _type == kPCjr);
+ _driver = (type == kAdLib) ? (_version > 0 ? PCSoundDriver::createAdLib(mixer, _version) : nullptr) : PCSoundDriver::createPCSpk(mixer, _type == kPCjr);
#else
_type = kAdLib;
- _driver = PCSoundDriver::createAdLib(mixer, _version);
+ if (_version > 0)
+ _driver = PCSoundDriver::createAdLib(mixer, _version);
#endif
assert(_driver);
}
diff --git a/engines/kyra/sound/sound_towns_darkmoon.cpp b/engines/kyra/sound/sound_towns_darkmoon.cpp
index cbd84841bba..3c81a15a849 100644
--- a/engines/kyra/sound/sound_towns_darkmoon.cpp
+++ b/engines/kyra/sound/sound_towns_darkmoon.cpp
@@ -36,10 +36,15 @@ namespace Kyra {
SoundTowns_Darkmoon::SoundTowns_Darkmoon(KyraEngine_v1 *vm, Audio::Mixer *mixer) : Sound(vm, mixer) {
_intf = new TownsAudioInterface(mixer, this);
_pcmData = 0;
+ _pcmDataSize = 0;
_pcmVol = 0;
_timer = 0;
_timerSwitch = 0;
+ _fileList = nullptr;
+ _fileListLen = 0;
+ _lastEnvChan = _lastSfxChan = 0;
memset(_resource, 0, sizeof(_resource));
+ memset(_soundTable, 0, sizeof(_soundTable));
}
SoundTowns_Darkmoon::~SoundTowns_Darkmoon() {
More information about the Scummvm-git-logs
mailing list