Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLukas Tönne <lukas.toenne@gmail.com>2014-05-22 17:46:35 +0400
committerLukas Tönne <lukas.toenne@gmail.com>2014-05-22 17:46:35 +0400
commit7a8676509505bf5fbf50943f3bcc561bf95fabef (patch)
tree50fd866fe7bba26e3f0d4e62a62856b312beabcd /source/blender/editors/object/object_group.c
parentc56bbccb0d7718c669e06c879e4cf903d6455cc3 (diff)
Fix T40290: False (or malfunctioning) dependency-cycle warning when adding dupligroup objects to another group.
The new recursion check for groups duplicating themselves has to un-set the LIB_DOIT flag after each object, otherwise it will prevent duplicating a (non-recursive) group multiple times.
Diffstat (limited to 'source/blender/editors/object/object_group.c')
-rw-r--r--source/blender/editors/object/object_group.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/source/blender/editors/object/object_group.c b/source/blender/editors/object/object_group.c
index 09b8b09eb60..bf43884bef7 100644
--- a/source/blender/editors/object/object_group.c
+++ b/source/blender/editors/object/object_group.c
@@ -80,6 +80,7 @@ static bool check_object_instances_group_recursive(Object *object, Group *group)
/* Cycle already exists in groups, let's prevent further crappyness */
return true;
}
+ /* flag the object to identify cyclic dependencies in further dupli groups */
object->id.flag &= ~LIB_DOIT;
if (object->dup_group) {
@@ -94,6 +95,9 @@ static bool check_object_instances_group_recursive(Object *object, Group *group)
}
}
+ /* un-flag the object, it's allowed to have the same group multiple times in parallel */
+ object->id.flag |= LIB_DOIT;
+
return false;
}