[Bf-extensions-cvs] [51ee36db] master: Fix T51627: .mdd & .pc2 exporters never releasing temp mesh data.

Bastien Montagne noreply at git.blender.org
Sat May 27 14:58:06 CEST 2017


Commit: 51ee36db621093d010393c256e1ebf9aed47637d
Author: Bastien Montagne
Date:   Sat May 27 14:56:57 2017 +0200
Branches: master
https://developer.blender.org/rBA51ee36db621093d010393c256e1ebf9aed47637d

Fix T51627: .mdd & .pc2 exporters never releasing temp mesh data.

Based on patch by Kai Kostack (@kaikostack), thanks!

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

M	io_export_pc2.py
M	io_shape_mdd/__init__.py
M	io_shape_mdd/export_mdd.py

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

diff --git a/io_export_pc2.py b/io_export_pc2.py
index fdc72324..752df5c4 100644
--- a/io_export_pc2.py
+++ b/io_export_pc2.py
@@ -19,7 +19,7 @@
 bl_info = {
     "name": "Export Pointcache Format(.pc2)",
     "author": "Florian Meyer (tstscr)",
-    "version": (1, 1),
+    "version": (1, 1, 1),
     "blender": (2, 71, 0),
     "location": "File > Export > Pointcache (.pc2)",
     "description": "Export mesh Pointcache data (.pc2)",
@@ -79,6 +79,7 @@ def do_export(context, props, filepath):
         me = ob.to_mesh(sc, apply_modifiers, 'PREVIEW')
 
         if len(me.vertices) != vertCount:
+            bpy.data.meshes.remove(me, do_unlink=True)
             file.close()
             try:
                 remove(filepath)
@@ -100,6 +101,9 @@ def do_export(context, props, filepath):
                                              float(v.co[2]))
             file.write(thisVertex)
 
+        bpy.data.meshes.remove(me, do_unlink=True)
+
+
     file.flush()
     file.close()
     return True
diff --git a/io_shape_mdd/__init__.py b/io_shape_mdd/__init__.py
index 7715b18f..99623241 100644
--- a/io_shape_mdd/__init__.py
+++ b/io_shape_mdd/__init__.py
@@ -21,6 +21,7 @@
 bl_info = {
     "name": "NewTek MDD format",
     "author": "Bill L.Nieuwendorp",
+    "version": (1, 0, 1),
     "blender": (2, 57, 0),
     "location": "File > Import-Export",
     "description": "Import-Export MDD as mesh shape keys",
diff --git a/io_shape_mdd/export_mdd.py b/io_shape_mdd/export_mdd.py
index 155f6641..04ca8238 100644
--- a/io_shape_mdd/export_mdd.py
+++ b/io_shape_mdd/export_mdd.py
@@ -98,6 +98,8 @@ def save(context, filepath="", frame_start=1, frame_end=300, fps=25.0, use_rest_
         me.transform(mat_flip * obj.matrix_world)
         f.write(pack(">%df" % (numverts * 3), *[axis for v in me.vertices for axis in v.co]))
 
+    bpy.data.meshes.remove(me, do_unlink=True)
+
     for frame in range(frame_start, frame_end + 1):  # in order to start at desired frame
         scene.frame_set(frame)
         me = obj.to_mesh(scene, True, 'PREVIEW')
@@ -107,6 +109,8 @@ def save(context, filepath="", frame_start=1, frame_end=300, fps=25.0, use_rest_
         # Write the vertex data
         f.write(pack(">%df" % (numverts * 3), *[axis for v in me.vertices for axis in v.co]))
 
+        bpy.data.meshes.remove(me, do_unlink=True)
+
     f.close()
 
     print('MDD Exported: %r frames:%d\n' % (filepath, numframes - 1))



More information about the Bf-extensions-cvs mailing list