Browse Source

Fix memory leak in `DBAPI`'s `LoadLocal()`

core_refactor
Anton Tarasenko 2 years ago
parent
commit
816bf3968d
  1. 5
      sources/Data/Database/DBAPI.uc

5
sources/Data/Database/DBAPI.uc

@ -166,6 +166,7 @@ public final function LocalDatabaseInstance LoadLocal(BaseText databaseName)
local Text rootRecordName;
local LocalDatabase newConfig;
local LocalDatabaseInstance newLocalDBInstance;
local Text dbKey;
if (databaseName == none) {
return none;
@ -186,7 +187,9 @@ public final function LocalDatabaseInstance LoadLocal(BaseText databaseName)
return none;
}
newLocalDBInstance = LocalDatabaseInstance(_.memory.Allocate(localDBClass));
loadedLocalDatabases.SetItem(databaseName.Copy(), newLocalDBInstance);
dbKey = databaseName.Copy();
loadedLocalDatabases.SetItem(dbKey, newLocalDBInstance);
dbKey.FreeSelf();
if (newConfig.HasDefinedRoot())
{
rootRecordName = newConfig.GetRootName();

Loading…
Cancel
Save