diff options
author | Jacques Lucke <jacques@blender.org> | 2021-10-15 14:39:11 +0300 |
---|---|---|
committer | Jacques Lucke <jacques@blender.org> | 2021-10-15 14:39:26 +0300 |
commit | f834939cebc7c608939d73c5a17a2aaea320c85e (patch) | |
tree | aa2eb6ae53372e1c8484f80ada35dea646ee518a /source/blender/blenkernel/intern/geometry_set.cc | |
parent | da3946b7108dc43e2783031ad8d231b65c6145ff (diff) |
Geometry Nodes: fix getting mutable geometry component
The previous code did not take into account that they geometry
component may not be mutable because it is shared between
multiple geometry sets.
Diffstat (limited to 'source/blender/blenkernel/intern/geometry_set.cc')
-rw-r--r-- | source/blender/blenkernel/intern/geometry_set.cc | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/source/blender/blenkernel/intern/geometry_set.cc b/source/blender/blenkernel/intern/geometry_set.cc index 33ead37979d..e439cc838e3 100644 --- a/source/blender/blenkernel/intern/geometry_set.cc +++ b/source/blender/blenkernel/intern/geometry_set.cc @@ -145,8 +145,10 @@ GeometryComponent &GeometrySet::get_component_for_write(GeometryComponentType co */ GeometryComponent *GeometrySet::get_component_ptr(GeometryComponentType type) { - GeometryComponentPtr *component_ptr = components_.lookup_ptr(type); - return component_ptr == nullptr ? nullptr : component_ptr->get(); + if (this->has(type)) { + return &this->get_component_for_write(type); + } + return nullptr; } /* Get the component of the given type. Might return null if the component does not exist yet. */ |