diff options
author | Colin Snover | 2017-11-16 22:31:27 -0600 |
---|---|---|
committer | Eugene Sandulenko | 2017-11-18 22:35:12 +0100 |
commit | a8b635e4cdac9a42d2c81517576bb970e5f9d06f (patch) | |
tree | b5b26ab20111dec2db51ea2f6e9fb26718262ef2 /engines/fullpipe/statics.h | |
parent | cef4d7787748fe8f0fae45d2573da4dfd4cc1c85 (diff) | |
download | scummvm-rg350-a8b635e4cdac9a42d2c81517576bb970e5f9d06f.tar.gz scummvm-rg350-a8b635e4cdac9a42d2c81517576bb970e5f9d06f.tar.bz2 scummvm-rg350-a8b635e4cdac9a42d2c81517576bb970e5f9d06f.zip |
FULLPIPE: Fix leaks of DynamicPhases
I am not entirely sure this is a correct fix for these leaks;
there is still the issue of the last member of _dynamicPhases being
invalidated and not removed sometime before the destruction of
Movement. Also, some of the items in this array are not actually
owned by Movement so deleting them will cause double-frees or
use-after-frees. It may be the case that a second list should be
maintained instead containing only the objects that are created
internally within Movement. Further testing will tell for sure.
Diffstat (limited to 'engines/fullpipe/statics.h')
-rw-r--r-- | engines/fullpipe/statics.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/engines/fullpipe/statics.h b/engines/fullpipe/statics.h index fa893d6118..a30915316d 100644 --- a/engines/fullpipe/statics.h +++ b/engines/fullpipe/statics.h @@ -116,6 +116,7 @@ class Movement : public GameObject { int _field_50; int _counterMax; int _counter; + /** a confusing mix of owned and unowned items */ Common::Array<DynamicPhase *> _dynamicPhases; int _field_78; PointList _framePosOffsets; |