[Bf-blender-cvs] [9fed39c7b0e] master: Alembic export: fixed memory leak

Sybren A. Stüvel noreply at git.blender.org
Tue Jan 15 16:27:31 CET 2019


Commit: 9fed39c7b0e21d46a65ddc08b806f686ec2706dd
Author: Sybren A. Stüvel
Date:   Tue Jan 15 16:14:05 2019 +0100
Branches: master
https://developer.blender.org/rB9fed39c7b0e21d46a65ddc08b806f686ec2706dd

Alembic export: fixed memory leak

If the triangulated mesh was in itself a new mesh that should be freed this
should happen before the function returns (as it only returns a single mesh,
and thus the caller can only free one).

===================================================================

M	source/blender/alembic/intern/abc_mesh.cc

===================================================================

diff --git a/source/blender/alembic/intern/abc_mesh.cc b/source/blender/alembic/intern/abc_mesh.cc
index 50698ef728e..9cc5edc505b 100644
--- a/source/blender/alembic/intern/abc_mesh.cc
+++ b/source/blender/alembic/intern/abc_mesh.cc
@@ -550,6 +550,10 @@ Mesh *AbcMeshWriter::getFinalMesh(bool &r_needsfree)
 		Mesh *result = BKE_mesh_from_bmesh_for_eval_nomain(bm, 0);
 		BM_mesh_free(bm);
 
+		if (r_needsfree) {
+			BKE_id_free(NULL, mesh);
+		}
+
 		mesh = result;
 		r_needsfree = true;
 	}



More information about the Bf-blender-cvs mailing list