[Scummvm-git-logs] scummvm master -> 7f9fe280a879fb68aecf6bba0223e636a4071324
whiterandrek
whiterandrek at gmail.com
Tue Oct 6 14:20:00 UTC 2020
This automated email contains information about 4 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
aa7e20de28 PETKA: fix memory leak in sound mgr
6e09269275 PETKA: fix memory leak in QObjectPetka
43524fe31f PETKA: fix memory leak when reading object data
7f9fe280a8 PETKA: fix memory leak in video decoding
Commit: aa7e20de28eb19e840cdb4a6fae75701665343fd
https://github.com/scummvm/scummvm/commit/aa7e20de28eb19e840cdb4a6fae75701665343fd
Author: Eduard Chaika (rampopula at gmail.com)
Date: 2020-10-06T17:19:52+03:00
Commit Message:
PETKA: fix memory leak in sound mgr
Changed paths:
engines/petka/sound.cpp
diff --git a/engines/petka/sound.cpp b/engines/petka/sound.cpp
index 85abd42f8c..e5f018b838 100644
--- a/engines/petka/sound.cpp
+++ b/engines/petka/sound.cpp
@@ -84,7 +84,7 @@ Sound *SoundMgr::addSound(const Common::String &name, Audio::Mixer::SoundType ty
Common::SeekableReadStream *s = _vm.openFile(name, false);
if (s) {
debug("SoundMgr: added sound %s", name.c_str());
- sound = new Sound(_vm.openFile(name, false), type);
+ sound = new Sound(s, type);
_sounds.getVal(name).reset(sound);
}
return sound;
Commit: 6e092692753b256d6535aab66484823378928104
https://github.com/scummvm/scummvm/commit/6e092692753b256d6535aab66484823378928104
Author: Eduard Chaika (rampopula at gmail.com)
Date: 2020-10-06T17:19:52+03:00
Commit Message:
PETKA: fix memory leak in QObjectPetka
Changed paths:
engines/petka/objects/heroes.cpp
engines/petka/objects/heroes.h
diff --git a/engines/petka/objects/heroes.cpp b/engines/petka/objects/heroes.cpp
index 8b7b03c797..5775a9fa60 100644
--- a/engines/petka/objects/heroes.cpp
+++ b/engines/petka/objects/heroes.cpp
@@ -34,7 +34,8 @@
namespace Petka {
-QObjectPetka::QObjectPetka() {
+QObjectPetka::QObjectPetka()
+ : _walk(nullptr) {
_field7C = 1;
_reaction = nullptr;
_heroReaction = nullptr;
@@ -47,7 +48,6 @@ QObjectPetka::QObjectPetka() {
_surfH = 0;
_surfW = 0;
_k = 1.0;
- _walk = nullptr;
}
void QObjectPetka::processMessage(const QMessage &arg) {
@@ -56,8 +56,7 @@ void QObjectPetka::processMessage(const QMessage &arg) {
msg.opcode = kSet;
_imageId = msg.arg1;
- delete _walk;
- _walk = new Walk(_imageId + 10);
+ _walk.reset(new Walk(_imageId + 10));
QObjectBG *room = g_vm->getQSystem()->_room;
if (room)
diff --git a/engines/petka/objects/heroes.h b/engines/petka/objects/heroes.h
index cee480ea0f..69eb926cb4 100644
--- a/engines/petka/objects/heroes.h
+++ b/engines/petka/objects/heroes.h
@@ -23,6 +23,7 @@
#ifndef PETKA_HEROES_H
#define PETKA_HEROES_H
+#include "common/ptr.h"
#include "petka/objects/object.h"
namespace Petka {
@@ -63,7 +64,7 @@ public:
// int _surfId;
int _imageId;
double _k;
- Walk *_walk;
+ Common::ScopedPtr<Walk> _walk;
int _destX;
int _destY;
bool _isWalking;
Commit: 43524fe31f0c839a77df9f0f25a9702495a5204c
https://github.com/scummvm/scummvm/commit/43524fe31f0c839a77df9f0f25a9702495a5204c
Author: Eduard Chaika (rampopula at gmail.com)
Date: 2020-10-06T17:19:52+03:00
Commit Message:
PETKA: fix memory leak when reading object data
Changed paths:
engines/petka/objects/object.cpp
diff --git a/engines/petka/objects/object.cpp b/engines/petka/objects/object.cpp
index cdb72cf999..89934c2140 100644
--- a/engines/petka/objects/object.cpp
+++ b/engines/petka/objects/object.cpp
@@ -374,6 +374,7 @@ static Common::String readString(Common::ReadStream &readStream) {
readStream.read(data, stringSize);
data[stringSize] = '\0';
Common::String str((char *)data);
+ free(data);
return str;
}
Commit: 7f9fe280a879fb68aecf6bba0223e636a4071324
https://github.com/scummvm/scummvm/commit/7f9fe280a879fb68aecf6bba0223e636a4071324
Author: Eduard Chaika (rampopula at gmail.com)
Date: 2020-10-06T17:19:52+03:00
Commit Message:
PETKA: fix memory leak in video decoding
Changed paths:
engines/petka/petka.cpp
diff --git a/engines/petka/petka.cpp b/engines/petka/petka.cpp
index 258d3f66e4..6f4572abf5 100644
--- a/engines/petka/petka.cpp
+++ b/engines/petka/petka.cpp
@@ -197,7 +197,7 @@ void PetkaEngine::playVideo(Common::SeekableReadStream *stream) {
if (decoder.needsUpdate()) {
const Graphics::Surface *frame = decoder.decodeNextFrame();
if (frame) {
- Common::ScopedPtr<Graphics::Surface> f(frame->convertTo(fmt));
+ Common::ScopedPtr<Graphics::Surface, Graphics::SurfaceDeleter> f(frame->convertTo(fmt));
_system->copyRectToScreen(f->getPixels(), f->pitch, 0, 0, f->w, f->h);
}
}
More information about the Scummvm-git-logs
mailing list