From a8c0a57fc3eb0f8c3aeeb2de083a0e06b06cef7e Mon Sep 17 00:00:00 2001 From: Sergey Sharybin Date: Mon, 28 Jan 2019 16:14:30 +0100 Subject: Fix T60599: Multires crash after doing dyntopo sculpt --- source/blender/blenkernel/intern/subdiv_displacement_multires.c | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'source/blender/blenkernel/intern/subdiv_displacement_multires.c') diff --git a/source/blender/blenkernel/intern/subdiv_displacement_multires.c b/source/blender/blenkernel/intern/subdiv_displacement_multires.c index 5727c8d487b..638f7200145 100644 --- a/source/blender/blenkernel/intern/subdiv_displacement_multires.c +++ b/source/blender/blenkernel/intern/subdiv_displacement_multires.c @@ -479,6 +479,11 @@ void BKE_subdiv_displacement_attach_from_multires( { /* Make sure we don't have previously assigned displacement. */ BKE_subdiv_displacement_detach(subdiv); + /* It is possible to have mesh without MDISPS layer. Happens when using + * dynamic topology. */ + if (!CustomData_has_layer(&mesh->ldata, CD_MDISPS)) { + return; + } /* Allocate all required memory. */ SubdivDisplacement *displacement = MEM_callocN(sizeof(SubdivDisplacement), "multires displacement"); -- cgit v1.2.3