diff options
author | RĂ©mi Verschelde <rverschelde@gmail.com> | 2018-01-04 01:07:54 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-01-04 01:07:54 +0100 |
commit | 72d3c474b0785d90897cfe566ec8a3d76121b1a5 (patch) | |
tree | 84825693c9311c79a7edd6ae5e62cdf0cdc9b85d /drivers | |
parent | f9f6f250e68853dc0b3ab397145b8c060e1cb110 (diff) | |
parent | 75c624e119998c4286a3d13e33233f44924f324a (diff) |
Merge pull request #15170 from ibrahn/fix-particle-leak
RasterizerStorageGLES3, delete particle objects freed by RID
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/gles3/rasterizer_storage_gles3.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/gles3/rasterizer_storage_gles3.cpp b/drivers/gles3/rasterizer_storage_gles3.cpp index 5ce544ecfb..d35d624589 100644 --- a/drivers/gles3/rasterizer_storage_gles3.cpp +++ b/drivers/gles3/rasterizer_storage_gles3.cpp @@ -6943,6 +6943,10 @@ bool RasterizerStorageGLES3::free(RID p_rid) { glDeleteTextures(1, &cls->distance); canvas_light_shadow_owner.free(p_rid); memdelete(cls); + } else if (particles_owner.owns(p_rid)) { + Particles *particles = particles_owner.get(p_rid); + particles_owner.free(p_rid); + memdelete(particles); } else { return false; } |