[Bf-blender-cvs] [a8c0a57fc3e] master: Fix T60599: Multires crash after doing dyntopo sculpt

Sergey Sharybin noreply at git.blender.org
Mon Jan 28 16:18:16 CET 2019


Commit: a8c0a57fc3eb0f8c3aeeb2de083a0e06b06cef7e
Author: Sergey Sharybin
Date:   Mon Jan 28 16:14:30 2019 +0100
Branches: master
https://developer.blender.org/rBa8c0a57fc3eb0f8c3aeeb2de083a0e06b06cef7e

Fix T60599: Multires crash after doing dyntopo sculpt

===================================================================

M	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");



More information about the Bf-blender-cvs mailing list