[Bf-blender-cvs] [97b24d8] temp-cycles-microdisplacement: Free TopologyRefiner
Mai Lavelle
noreply at git.blender.org
Sun Jul 10 05:31:24 CEST 2016
Commit: 97b24d82c6b4e7a61ac269cd005fcf82008c0f0c
Author: Mai Lavelle
Date: Mon Jul 4 01:57:05 2016 -0400
Branches: temp-cycles-microdisplacement
https://developer.blender.org/rB97b24d82c6b4e7a61ac269cd005fcf82008c0f0c
Free TopologyRefiner
Missed this somehow, was leaking memory.
===================================================================
M intern/cycles/render/mesh_subdivision.cpp
===================================================================
diff --git a/intern/cycles/render/mesh_subdivision.cpp b/intern/cycles/render/mesh_subdivision.cpp
index 0824494..180d7bd 100644
--- a/intern/cycles/render/mesh_subdivision.cpp
+++ b/intern/cycles/render/mesh_subdivision.cpp
@@ -127,14 +127,16 @@ struct OsdVertex {
class OsdData {
Mesh* mesh;
vector<OsdVertex> verts;
+ Far::TopologyRefiner* refiner;
Far::PatchTable* patch_table;
Far::PatchMap* patch_map;
public:
- OsdData() : mesh(NULL), patch_table(NULL), patch_map(NULL) {}
+ OsdData() : mesh(NULL), refiner(NULL), patch_table(NULL), patch_map(NULL) {}
~OsdData()
{
+ delete refiner;
delete patch_table;
delete patch_map;
}
@@ -150,7 +152,7 @@ public:
options.SetVtxBoundaryInterpolation(Sdc::Options::VTX_BOUNDARY_EDGE_ONLY);
/* create refiner */
- Far::TopologyRefiner* refiner = Far::TopologyRefinerFactory<Mesh>::Create(*mesh,
+ refiner = Far::TopologyRefinerFactory<Mesh>::Create(*mesh,
Far::TopologyRefinerFactory<Mesh>::Options(type, options));
/* adaptive refinement */
More information about the Bf-blender-cvs
mailing list