diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2014-12-29 12:00:25 +0300 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2014-12-29 12:02:15 +0300 |
commit | 4088fad6dd3fbf3d032c8635f3e87cc055a1b9c0 (patch) | |
tree | 3b19ffb600b5bca7e6f5a26dda6287a56a7972d4 /intern/cycles/kernel/geom/geom_bvh_subsurface.h | |
parent | 40517283ca12a423140cbe20652418839877026a (diff) |
Cycles: Add asserts around BVH stack pushes
This way we're kind of safer to troubleshoot possible stack overflow issues.
Diffstat (limited to 'intern/cycles/kernel/geom/geom_bvh_subsurface.h')
-rw-r--r-- | intern/cycles/kernel/geom/geom_bvh_subsurface.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/intern/cycles/kernel/geom/geom_bvh_subsurface.h b/intern/cycles/kernel/geom/geom_bvh_subsurface.h index 974e0e47e12..ea9d7c07a72 100644 --- a/intern/cycles/kernel/geom/geom_bvh_subsurface.h +++ b/intern/cycles/kernel/geom/geom_bvh_subsurface.h @@ -169,6 +169,7 @@ ccl_device uint BVH_FUNCTION_FULL_NAME(BVH)(KernelGlobals *kg, } ++stackPtr; + kernel_assert(stackPtr < BVH_STACK_SIZE); traversalStack[stackPtr] = nodeAddrChild1; } else { @@ -250,6 +251,7 @@ ccl_device uint BVH_FUNCTION_FULL_NAME(BVH)(KernelGlobals *kg, #endif ++stackPtr; + kernel_assert(stackPtr < BVH_STACK_SIZE); traversalStack[stackPtr] = ENTRYPOINT_SENTINEL; nodeAddr = kernel_tex_fetch(__object_node, object); |