9f1a4a2e3fce47d3d7cce3ad37704c7dff6c9ec3
In case a part of an override hierarchy would still be linked data, and there would be other liboverride hierarchies sharing usage of that same linked data, trying to create a partial override of that linked data into a hierarchy would create very unreliable results. This commit now only process each ID at most once, to ensure that the liboverride will only be put in one liboverride hierarchy. This is only a partial fix, results now should at least always be valid. However, due to inheritently broken Outliner code when it comes to same data in more than one path of the tree, the place where (hierarchy in which) the new liboverride will be created is currently 'random' and unpredictable from user perspective. This commit contains some code to try to alliviate that (by enforcing processing of the active elements first), but unfortunately this does not work either.
…
Blender
Blender is the free and open source 3D creation suite. It supports the entirety of the 3D pipeline-modeling, rigging, animation, simulation, rendering, compositing, motion tracking and video editing.
Project Pages
Development
License
Blender as a whole is licensed under the GNU General Public License, Version 3. Individual files may have a different, but compatible license.
See blender.org/about/license for details.
Description
Languages
C++
78%
Python
14.9%
C
2.9%
GLSL
1.9%
CMake
1.2%
Other
0.9%
