[Bf-blender-cvs] [d60be68100c] blender2.8: Fix crash with depsgraph iterator and empty scene.
Brecht Van Lommel
noreply at git.blender.org
Thu Apr 26 16:38:35 CEST 2018
Commit: d60be68100cd306d8e1234b89b2741dc4423a332
Author: Brecht Van Lommel
Date: Wed Apr 25 19:03:49 2018 +0200
Branches: blender2.8
https://developer.blender.org/rBd60be68100cd306d8e1234b89b2741dc4423a332
Fix crash with depsgraph iterator and empty scene.
This causes crashes in the view layer tests.
===================================================================
M source/blender/depsgraph/intern/depsgraph_query_iter.cc
===================================================================
diff --git a/source/blender/depsgraph/intern/depsgraph_query_iter.cc b/source/blender/depsgraph/intern/depsgraph_query_iter.cc
index 6e8e474fca6..baa87aefd64 100644
--- a/source/blender/depsgraph/intern/depsgraph_query_iter.cc
+++ b/source/blender/depsgraph/intern/depsgraph_query_iter.cc
@@ -205,6 +205,7 @@ void DEG_iterator_objects_begin(BLI_Iterator *iter, DEGObjectIterData *data)
const size_t num_id_nodes = deg_graph->id_nodes.size();
if (num_id_nodes == 0) {
+ iter->data = NULL;
iter->valid = false;
return;
}
@@ -265,10 +266,13 @@ void DEG_iterator_objects_end(BLI_Iterator *iter)
{
#ifndef NDEBUG
DEGObjectIterData *data = (DEGObjectIterData *)iter->data;
- /* Force crash in case the iterator data is referenced and accessed down
- * the line. (T51718)
- */
- memset(&data->temp_dupli_object, 0xff, sizeof(data->temp_dupli_object));
+
+ if (data) {
+ /* Force crash in case the iterator data is referenced and accessed down
+ * the line. (T51718)
+ */
+ memset(&data->temp_dupli_object, 0xff, sizeof(data->temp_dupli_object));
+ }
#else
(void) iter;
#endif
More information about the Bf-blender-cvs
mailing list