From 04230e80d12a7187887a927f16a0ccdac9b50e9e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?K=C3=A9vin=20Dietrich?= Date: Sun, 25 Sep 2016 22:09:05 +0200 Subject: [PATCH] Alembic: only interpolate vertices when their number don't differ between samples. This could cause some crashes. --- source/blender/alembic/intern/abc_mesh.cc | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/source/blender/alembic/intern/abc_mesh.cc b/source/blender/alembic/intern/abc_mesh.cc index 00c86779960..8e640b36c27 100644 --- a/source/blender/alembic/intern/abc_mesh.cc +++ b/source/blender/alembic/intern/abc_mesh.cc @@ -859,7 +859,10 @@ static void read_mverts(CDStreamConfig &config, const AbcMeshData &mesh_data) const P3fArraySamplePtr &positions = mesh_data.positions; const N3fArraySamplePtr &normals = mesh_data.vertex_normals; - if (config.weight != 0.0f && mesh_data.ceil_positions) { + if ( config.weight != 0.0f + && mesh_data.ceil_positions != NULL + && mesh_data.ceil_positions->size() == positions->size()) + { read_mverts_interp(mverts, positions, mesh_data.ceil_positions, config.weight); return; }