diff options
Diffstat (limited to 'source/blender/nodes/NOD_geometry_exec.hh')
-rw-r--r-- | source/blender/nodes/NOD_geometry_exec.hh | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/source/blender/nodes/NOD_geometry_exec.hh b/source/blender/nodes/NOD_geometry_exec.hh index 0d5ba6cf5db..c5bc42b059d 100644 --- a/source/blender/nodes/NOD_geometry_exec.hh +++ b/source/blender/nodes/NOD_geometry_exec.hh @@ -163,6 +163,7 @@ class GeoNodeExecParams { } void check_input_geometry_set(StringRef identifier, const GeometrySet &geometry_set) const; + void check_output_geometry_set(const GeometrySet &geometry_set) const; /** * Get input as vector for multi input socket with the given identifier. @@ -231,6 +232,9 @@ class GeoNodeExecParams { #ifdef DEBUG this->check_output_access(identifier, type); #endif + if constexpr (std::is_same_v<StoredT, GeometrySet>) { + this->check_output_geometry_set(value); + } GMutablePointer gvalue = provider_->alloc_output_value(type); new (gvalue.get()) StoredT(std::forward<T>(value)); provider_->set_output(identifier, gvalue); |