[Bf-blender-cvs] [5102a02] master: Fix T37541: multires not reading external displacement file after entering edit mode.

Brecht Van Lommel noreply at git.blender.org
Tue Nov 26 19:56:17 CET 2013


Commit: 5102a02b388bdf41f2a2d587980a0d9457d19d88
Author: Brecht Van Lommel
Date:   Tue Nov 26 17:09:15 2013 +0100
http://developer.blender.org/rB5102a02b388bdf41f2a2d587980a0d9457d19d88

Fix T37541: multires not reading external displacement file after entering edit mode.

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

M	source/blender/blenkernel/intern/customdata.c
M	source/blender/blenkernel/intern/multires.c

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

diff --git a/source/blender/blenkernel/intern/customdata.c b/source/blender/blenkernel/intern/customdata.c
index a7d87fa..7cbcbaf 100644
--- a/source/blender/blenkernel/intern/customdata.c
+++ b/source/blender/blenkernel/intern/customdata.c
@@ -507,16 +507,15 @@ static void layerCopy_mdisps(const void *source, void *dest, int count)
 		if (s[i].disps) {
 			d[i].disps = MEM_dupallocN(s[i].disps);
 			d[i].hidden = MEM_dupallocN(s[i].hidden);
-			d[i].totdisp = s[i].totdisp;
-			d[i].level = s[i].level;
 		}
 		else {
 			d[i].disps = NULL;
 			d[i].hidden = NULL;
-			d[i].totdisp = 0;
-			d[i].level = 0;
 		}
-		
+
+		/* still copy even if not in memory, displacement can be external */
+		d[i].totdisp = s[i].totdisp;
+		d[i].level = s[i].level;
 	}
 }
 
diff --git a/source/blender/blenkernel/intern/multires.c b/source/blender/blenkernel/intern/multires.c
index 0cdcf4e..7ef2505 100644
--- a/source/blender/blenkernel/intern/multires.c
+++ b/source/blender/blenkernel/intern/multires.c
@@ -2288,7 +2288,7 @@ void multires_topology_changed(Mesh *me)
 	MDisps *mdisp = NULL, *cur = NULL;
 	int i, grid = 0;
 
-	CustomData_external_read(&me->ldata, &me->id, CD_MASK_MDISPS, me->totface);
+	CustomData_external_read(&me->ldata, &me->id, CD_MASK_MDISPS, me->totloop);
 	mdisp = CustomData_get_layer(&me->ldata, CD_MDISPS);
 
 	if (!mdisp)




More information about the Bf-blender-cvs mailing list