[Bf-blender-cvs] [343c1e3] object_nodes: Fix for refcounting in the mesh value node.
Lukas Tönne
noreply at git.blender.org
Wed Dec 2 12:05:59 CET 2015
Commit: 343c1e3006c9b25a90d68b4cb57bd6ececfe03d8
Author: Lukas Tönne
Date: Wed Dec 2 12:04:29 2015 +0100
Branches: object_nodes
https://developer.blender.org/rB343c1e3006c9b25a90d68b4cb57bd6ececfe03d8
Fix for refcounting in the mesh value node.
This node was overwriting the entire stack pointer (incl. the refcount)
but should only store the DM itself.
===================================================================
M source/blender/blenvm/bvm/bvm_eval.cc
M source/blender/blenvm/bvm/bvm_eval.h
M source/blender/blenvm/intern/bvm_api.cc
===================================================================
diff --git a/source/blender/blenvm/bvm/bvm_eval.cc b/source/blender/blenvm/bvm/bvm_eval.cc
index e8dbc48..5863f4d 100644
--- a/source/blender/blenvm/bvm/bvm_eval.cc
+++ b/source/blender/blenvm/bvm/bvm_eval.cc
@@ -61,8 +61,6 @@ EvalContext::~EvalContext()
/* ------------------------------------------------------------------------- */
-static mesh_ptr __empty_mesh__;
-
static void eval_op_value_float(float *stack, float value, StackIndex offset)
{
stack_store_float(stack, offset, value);
@@ -98,7 +96,7 @@ static void eval_op_value_pointer(float *stack, PointerRNA value, StackIndex off
*/
static void eval_op_value_mesh(float *stack, StackIndex offset)
{
- stack_store_mesh_ptr(stack, offset, __empty_mesh__);
+ stack_store_mesh(stack, offset, CDDM_new(0, 0, 0, 0, 0));
}
static void eval_op_float_to_int(float *stack, StackIndex offset_from, StackIndex offset_to)
@@ -926,14 +924,4 @@ void EvalContext::eval_expression(const EvalGlobals *globals, const EvalData *da
eval_instructions(globals, data, fn, entry_point, stack);
}
-void bvm_init()
-{
- create_empty_mesh(__empty_mesh__);
-}
-
-void bvm_free()
-{
- destroy_empty_mesh(__empty_mesh__);
-}
-
} /* namespace bvm */
diff --git a/source/blender/blenvm/bvm/bvm_eval.h b/source/blender/blenvm/bvm/bvm_eval.h
index 0be8487..dc55c15 100644
--- a/source/blender/blenvm/bvm/bvm_eval.h
+++ b/source/blender/blenvm/bvm/bvm_eval.h
@@ -137,9 +137,6 @@ protected:
MEM_CXX_CLASS_ALLOC_FUNCS("BVM:EvalContext")
};
-void bvm_init();
-void bvm_free();
-
} /* namespace bvm */
#endif /* __BVM_EVAL_H__ */
diff --git a/source/blender/blenvm/intern/bvm_api.cc b/source/blender/blenvm/intern/bvm_api.cc
index 42a7dec..1a5025c 100644
--- a/source/blender/blenvm/intern/bvm_api.cc
+++ b/source/blender/blenvm/intern/bvm_api.cc
@@ -68,7 +68,6 @@ void BVM_init(void)
create_empty_mesh(__empty_mesh__);
- bvm_init();
nodes_init();
}
@@ -79,7 +78,6 @@ void BVM_free(void)
BVM_texture_cache_clear();
nodes_free();
- bvm_free();
destroy_empty_mesh(__empty_mesh__);
}
More information about the Bf-blender-cvs
mailing list