plugging found leaks

LEAK from G:\GameDev\GithubRepo\Torque3D\Engine\source\console/consoleObject.h:686
- leak around props remaining after the const_cast free it up

LEAK around sound asset
- assetEnumNameConcat was creating a leak.
This commit is contained in:
marauder2k7 2025-05-04 12:54:01 +01:00
parent 8f856dd7cd
commit 15ff382469
2 changed files with 9 additions and 2 deletions

View file

@ -516,7 +516,12 @@ if (m##name##AssetId[index] != StringTable->EmptyString())\
else Con::warnf("Warning: %s::LOAD_SOUNDASSET_ARRAY(%s[%i])-%s", mClassName, m##name##AssetId[index], index, ImageAsset::getAssetErrstrn(assetState).c_str());\
}
#define assetEnumNameConcat(x,suff)(new std::string( x + std::string(#suff)))->c_str()
#define assetEnumNameConcat(x, suff) ([](const char* base) { \
String result = String(base) + #suff; \
char* ret = Con::getReturnBuffer(result.length() + 1); \
dStrcpy(ret, result.c_str(), result.length() + 1); \
return ret; \
})(x)
#define INITPERSISTFIELD_SOUNDASSET_ENUMED(name, enumType, maxValue, consoleClass, docs) \
for (U32 i = 0; i < maxValue; i++)\

View file

@ -705,7 +705,9 @@ public:
smPropertyTable = _smPropertyTable;
const_cast<EngineTypeInfo*>(mTypeInfo)->mPropertyTable = &_smPropertyTable;
// After we hand it off, immediately delete if safe:
delete[] props;
// Let the base finish up.
AbstractClassRep::init();
}