Merge pull request #39818 from Wavesonics/server-memory-leak

Fix memory leaks in RasterizerStorageDummy::free
This commit is contained in:
Rémi Verschelde 2020-06-26 08:05:13 +02:00 committed by GitHub
commit 705b1695af
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 9 additions and 4 deletions

View File

@ -725,20 +725,25 @@ public:
}
bool free(RID p_rid) {
if (texture_owner.owns(p_rid)) {
// delete the texture
DummyTexture *texture = texture_owner.get(p_rid);
texture_owner.free(p_rid);
memdelete(texture);
}
if (mesh_owner.owns(p_rid)) {
} else if (mesh_owner.owns(p_rid)) {
// delete the mesh
DummyMesh *mesh = mesh_owner.getornull(p_rid);
mesh_owner.free(p_rid);
memdelete(mesh);
} else if (lightmap_capture_data_owner.owns(p_rid)) {
// delete the lightmap
LightmapCapture *lightmap_capture = lightmap_capture_data_owner.getornull(p_rid);
lightmap_capture_data_owner.free(p_rid);
memdelete(lightmap_capture);
} else {
return false;
}
return true;
}