diff --git a/source/blender/blenlib/BLI_generic_virtual_array.hh b/source/blender/blenlib/BLI_generic_virtual_array.hh index 43ca16a894f..21549896f45 100644 --- a/source/blender/blenlib/BLI_generic_virtual_array.hh +++ b/source/blender/blenlib/BLI_generic_virtual_array.hh @@ -860,6 +860,7 @@ template inline GVArray::GVArray(const VArray &varray) * #this is destructed. */ if (info.type == CommonVArrayInfo::Type::Span && !info.may_have_ownership) { *this = GVArray::ForSpan(GSpan(CPPType::get(), info.data, varray.size())); + return; } if (varray.try_assign_GVArray(*this)) { return; diff --git a/source/blender/geometry/intern/resample_curves.cc b/source/blender/geometry/intern/resample_curves.cc index 86c1980d9ee..d61941aa071 100644 --- a/source/blender/geometry/intern/resample_curves.cc +++ b/source/blender/geometry/intern/resample_curves.cc @@ -345,6 +345,7 @@ Curves *resample_to_evaluated(const CurveComponent &src_component, { const bke::CurvesGeometry &src_curves = bke::CurvesGeometry::wrap( src_component.get_for_read()->geometry); + src_curves.ensure_evaluated_offsets(); bke::GeometryComponentFieldContext field_context{src_component, ATTR_DOMAIN_CURVE}; fn::FieldEvaluator evaluator{field_context, src_curves.curves_num()};