[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [23763] trunk/blender/source/blender/ render/intern: Fix #19571 (reported by Markus Ilmola):
Andre Susano Pinto
andresusanopinto at gmail.com
Sat Oct 10 20:42:22 CEST 2009
Revision: 23763
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=23763
Author: jaguarandi
Date: 2009-10-10 20:42:20 +0200 (Sat, 10 Oct 2009)
Log Message:
-----------
Fix #19571 (reported by Markus Ilmola):
Added missing callbacks. Was leading to crashs when the raytree was empty.
Modified Paths:
--------------
trunk/blender/source/blender/render/intern/raytrace/rayobject.cpp
trunk/blender/source/blender/render/intern/source/rayobject_instance.c
Modified: trunk/blender/source/blender/render/intern/raytrace/rayobject.cpp
===================================================================
--- trunk/blender/source/blender/render/intern/raytrace/rayobject.cpp 2009-10-10 17:40:56 UTC (rev 23762)
+++ trunk/blender/source/blender/render/intern/raytrace/rayobject.cpp 2009-10-10 18:42:20 UTC (rev 23763)
@@ -559,6 +559,9 @@
return 0.0;
}
+static void RE_rayobject_empty_hint_bb(RayObject *o, RayHint *hint, float *min, float *max)
+{}
+
static RayObjectAPI empty_api =
{
RE_rayobject_empty_intersect,
@@ -566,7 +569,8 @@
NULL, //static void RE_rayobject_instance_done(RayObject *o);
RE_rayobject_empty_free,
RE_rayobject_empty_bb,
- RE_rayobject_empty_cost
+ RE_rayobject_empty_cost,
+ RE_rayobject_empty_hint_bb
};
static RayObject empty_raytree = { &empty_api, {0, 0} };
Modified: trunk/blender/source/blender/render/intern/source/rayobject_instance.c
===================================================================
--- trunk/blender/source/blender/render/intern/source/rayobject_instance.c 2009-10-10 17:40:56 UTC (rev 23762)
+++ trunk/blender/source/blender/render/intern/source/rayobject_instance.c 2009-10-10 18:42:20 UTC (rev 23763)
@@ -41,6 +41,9 @@
static void RE_rayobject_instance_bb(RayObject *o, float *min, float *max);
static float RE_rayobject_instance_cost(RayObject *o);
+static void RE_rayobject_instance_hint_bb(RayObject *o, RayHint *hint, float *min, float *max)
+{}
+
static RayObjectAPI instance_api =
{
RE_rayobject_instance_intersect,
@@ -48,7 +51,8 @@
NULL, //static void RE_rayobject_instance_done(RayObject *o);
RE_rayobject_instance_free,
RE_rayobject_instance_bb,
- RE_rayobject_instance_cost
+ RE_rayobject_instance_cost,
+ RE_rayobject_instance_hint_bb
};
typedef struct InstanceRayObject
More information about the Bf-blender-cvs
mailing list