aboutsummaryrefslogtreecommitdiff
path: root/engines
AgeCommit message (Collapse)Author
2017-11-18FULLPIPE: Fix memory leaks of InteractionsColin Snover
2017-11-18FULLPIPE: Fix memory leaks of PreloadItemsColin Snover
2017-11-18FULLPIPE: Remove manual memory management of use listColin Snover
2017-11-18FULLPIPE: Fix memory leaks of InventoryPoolItemColin Snover
2017-11-18FULLPIPE: Fix leaks of DynamicPhasesColin Snover
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.
2017-11-18FULLPIPE: Fix memory leaks of MctlItems in MctlCompoundColin Snover
2017-11-18FULLPIPE: Clarify ownership of DynamicPhase::_exCommandColin Snover
2017-11-18FULLPIPE: Clarify ownership of pointer arrays in StaticANIObjectColin Snover
2017-11-18FULLPIPE: Fix memory leaks in PictureObject, BackgroundColin Snover
2017-11-18FULLPIPE: Use flag enumColin Snover
2017-11-18FULLPIPE: Fix memory leak of graph nodes and listsColin Snover
2017-11-18FULLPIPE: Remove unnecessary constructorsColin Snover
These appear to be default member-wise copy constructors or POD constructors that zero all members. I suspect that quite a few pointer-taking constructors are actually supposed to be copy-constructors but since they don't all just do default member-wise copies I do not feel confident in changing them without verifying that there are not separate copy constructors in the disassembly, and I don't have the database for this game.
2017-11-18FULLPIPE: Fix memory leaks, ownership issues with various point listsColin Snover
2017-11-18FULLPIPE: Disable some unused code pathsColin Snover
2017-11-18FULLPIPE: Annotate ownership rule of MfcArchive::readClassColin Snover
2017-11-18FULLPIPE: Fix memory leaks and unnecessary indirect allocations in Motion ↵Colin Snover
and Sc2
2017-11-18FULLPIPE: Fix memory leak of global message queuesColin Snover
2017-11-18FULLPIPE: Fix memory leaks in ModalMainMenuColin Snover
2017-11-18FULLPIPE: Remove unnecessary and unsafe C-style castsColin Snover
2017-11-18FULLPIPE: Fix deleted queue leaks & clarify flagsColin Snover
2017-11-18FULLPIPE: Reduce chance of Scene leaks, remove unused SceneTag memberColin Snover
2017-11-18FULLPIPE: Remove unused gap data from EntranceInfoColin Snover
2017-11-18FULLPIPE: Fix memory leaks and ownership problems with Behavior objectsColin Snover
2017-11-18FULLPIPE: Correctly fix Bitmap leaksColin Snover
2017-11-18FULLPIPE: Fix memory leak of MGMItemColin Snover
2017-11-18FULLPIPE: Fix memory leaks of MovTable and remove unnecessary extra classColin Snover
2017-11-18FULLPIPE: Remove manual memory management of streamsColin Snover
2017-11-18FULLPIPE: Use bool literals instead of ints for bool propertiesColin Snover
2017-11-18FULLPIPE: Take references instead of pointers for required arguments in ↵Colin Snover
statics, remove unnecessary Picture allocation
2017-11-18FULLPIPE: Remove memory leaks and manual memory management in SceneColin Snover
2017-11-18FULLPIPE: Fix memory leaks of SceneTagColin Snover
2017-11-18FULLPIPE: Remove unnecessary and illegal C-style castsColin Snover
2017-11-18FULLPIPE: Fix memory leak of save game thumbnailColin Snover
2017-11-18FULLPIPE: Fix leaks and unnecessary extra allocations in FullpipeEngineColin Snover
2017-11-18FULLPIPE: Fix memory leak & unnecessary heap allocation of RectsColin Snover
2017-11-18FULLPIPE: Fix memory leaks of inventory icons and itemsColin Snover
2017-11-18FULLPIPE: Fix memory leaks in ModalVideoPlayerColin Snover
2017-11-18FULLPIPE: Handle quit/RTL events correctlyColin Snover
Fixes Trac#10316.
2017-11-18FULLPIPE: Remove unnecessary extra allocation for RNGColin Snover
2017-11-18FULLPIPE: Fix leaks of MGMSubItemColin Snover
2017-11-18FULLPIPE: Improve memory ownership in MotionColin Snover
2017-11-18FULLPIPE: Make TODO labelled so it is picked up by toolsColin Snover
2017-11-18FULLPIPE: Fix memory leaks, ownership issues, and endianness issues in ↵Colin Snover
graphics code
2017-11-18FULLPIPE: Fix whitespace errorsColin Snover
2017-11-18FULLPIPE: Make dimensions/coordinate getters pure functionsColin Snover
2017-11-18FULLPIPE: Remove illegal C-style cast to incompatible typeColin Snover
2017-11-18FULLPIPE: Improve memory safety and fix leaks in sound codeColin Snover
2017-11-18FULLPIPE: Improve memory safety and typing of NGIArchiveColin Snover
2017-11-18FULLPIPE: Fix illegal C-style cast to incompatible typeColin Snover
2017-11-18COMMON: Add limited support for custom deleters to ScopedPtrColin Snover
Custom deleters of ScopedPtr are not currently fully conforming to C++11's support for custom deleters in std::unique_ptr for the sake of simplicity of implementation. Unlike in the standard library, plain functions and lvalue references are not supported, nor may custom deleters be passed to the constructor at runtime. This can be improved in the future, if necessary, by doing what standard library implementations usually do and creating a Pair class that uses the Empty Base Optimization idiom to avoid extra storage overhead of the deleter instance when it is not needed, as in typical standard library implementations, plus some additional type traits to support the necessary metaprogramming for the different type overloads.