[Bf-blender-cvs] [7cdf599] master: Add asserts to raytrace get/set_cut functions

Campbell Barton noreply at git.blender.org
Wed Apr 23 19:08:56 CEST 2014


Commit: 7cdf5992dd0ba195f8eca7ac7db5201bc90824a4
Author: Campbell Barton
Date:   Thu Apr 24 02:29:40 2014 +1000
https://developer.blender.org/rB7cdf5992dd0ba195f8eca7ac7db5201bc90824a4

Add asserts to raytrace get/set_cut functions

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

M	source/blender/render/intern/raytrace/reorganize.h

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

diff --git a/source/blender/render/intern/raytrace/reorganize.h b/source/blender/render/intern/raytrace/reorganize.h
index 5cb48f7..33b5258 100644
--- a/source/blender/render/intern/raytrace/reorganize.h
+++ b/source/blender/render/intern/raytrace/reorganize.h
@@ -287,6 +287,9 @@ static float bvh_refit(Node *node)
 #define MAX_CUT_SIZE         4               /* svbvh assumes max 4 children! */
 #define MAX_OPTIMIZE_CHILDS  MAX_CUT_SIZE
 
+#define CUT_SIZE_IS_VALID(cut_size) ((cut_size) < MAX_CUT_SIZE && (cut_size) >= 0)
+
+
 struct OVBVHNode {
 	float bb[6];
 
@@ -300,6 +303,7 @@ struct OVBVHNode {
 	float cut_cost[MAX_CUT_SIZE];
 	float get_cost(int cutsize)
 	{
+		assert(CUT_SIZE_IS_VALID(cutsize - 1));
 		return cut_cost[cutsize - 1];
 	}
 	
@@ -310,6 +314,7 @@ struct OVBVHNode {
 	int cut_size[MAX_CUT_SIZE];
 	int get_cut_size(int parent_cut_size)
 	{
+		assert(CUT_SIZE_IS_VALID(parent_cut_size - 1));
 		return cut_size[parent_cut_size - 1];
 	}




More information about the Bf-blender-cvs mailing list