From 1e23d43006705a1d25e04d9cc90674044789cb92 Mon Sep 17 00:00:00 2001 From: Torbjörn Andersson Date: Sat, 5 Jan 2019 20:09:23 +0100 Subject: SCUMM: Silence GCC memset() warnings Recent GCC versions complain if you memset() a class or struct that contain non-POD data types. Get around that by either initializing the object when created, or by adding a reset() method. --- engines/scumm/imuse_digi/dimuse.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'engines/scumm/imuse_digi/dimuse.cpp') diff --git a/engines/scumm/imuse_digi/dimuse.cpp b/engines/scumm/imuse_digi/dimuse.cpp index b6955212a9..de5b1634ed 100644 --- a/engines/scumm/imuse_digi/dimuse.cpp +++ b/engines/scumm/imuse_digi/dimuse.cpp @@ -55,7 +55,7 @@ IMuseDigital::IMuseDigital(ScummEngine_v7 *scumm, Audio::Mixer *mixer, int fps) for (int l = 0; l < MAX_DIGITAL_TRACKS + MAX_DIGITAL_FADETRACKS; l++) { _track[l] = new Track; assert(_track[l]); - memset(_track[l], 0, sizeof(Track)); + _track[l]->reset(); _track[l]->trackId = l; } _vm->getTimerManager()->installTimerProc(timer_handler, 1000000 / _callbackFps, this, "IMuseDigital"); @@ -147,7 +147,7 @@ void IMuseDigital::saveLoadEarly(Common::Serializer &s) { for (int l = 0; l < MAX_DIGITAL_TRACKS + MAX_DIGITAL_FADETRACKS; l++) { Track *track = _track[l]; if (s.isLoading()) { - memset(track, 0, sizeof(Track)); + track->reset(); } syncWithSerializer(s, *track); if (s.isLoading()) { @@ -210,7 +210,7 @@ void IMuseDigital::callback() { // mark it as unused. if (!track->stream) { if (!_mixer->isSoundHandleActive(track->mixChanHandle)) - memset(track, 0, sizeof(Track)); + track->reset(); continue; } -- cgit v1.2.3