[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [60203] trunk/blender/intern/cycles/bvh/ bvh_build.cpp: Fix #36750: windows crash with empty cycles scene, can' t do &references[0] with
Brecht Van Lommel
brechtvanlommel at pandora.be
Tue Sep 17 17:03:01 CEST 2013
Revision: 60203
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=60203
Author: blendix
Date: 2013-09-17 15:03:01 +0000 (Tue, 17 Sep 2013)
Log Message:
-----------
Fix #36750: windows crash with empty cycles scene, can't do &references[0] with
MSVC when references is an empty vector.
Modified Paths:
--------------
trunk/blender/intern/cycles/bvh/bvh_build.cpp
Modified: trunk/blender/intern/cycles/bvh/bvh_build.cpp
===================================================================
--- trunk/blender/intern/cycles/bvh/bvh_build.cpp 2013-09-17 14:49:11 UTC (rev 60202)
+++ trunk/blender/intern/cycles/bvh/bvh_build.cpp 2013-09-17 15:03:01 UTC (rev 60203)
@@ -286,7 +286,7 @@
/* have at least one inner node on top level, for performance and correct
* visibility tests, since object instances do not check visibility flag */
- if(!(params.top_level && level == 0)) {
+ if(!(range.size() > 0 && params.top_level && level == 0)) {
/* make leaf node when threshold reached or SAH tells us */
if(params.small_enough_for_leaf(size, level) || (size <= params.max_leaf_size && leafSAH < splitSAH))
return create_leaf_node(range);
@@ -326,7 +326,7 @@
return NULL;
/* small enough or too deep => create leaf. */
- if(!(params.top_level && level == 0)) {
+ if(!(range.size() > 0 && params.top_level && level == 0)) {
if(params.small_enough_for_leaf(range.size(), level)) {
progress_count += range.size();
return create_leaf_node(range);
@@ -336,7 +336,7 @@
/* splitting test */
BVHMixedSplit split(this, range, level);
- if(!(params.top_level && level == 0)) {
+ if(!(range.size() > 0 && params.top_level && level == 0)) {
if(split.no_split) {
progress_count += range.size();
return create_leaf_node(range);
More information about the Bf-blender-cvs
mailing list