[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [42942] trunk/blender/source/blender/ modifiers/intern/MOD_fluidsim_util.c: Fix #29696: Crash on exit of edit mode after deleting contents of fluid domain

Sergey Sharybin sergey.vfx at gmail.com
Wed Dec 28 19:00:05 CET 2011


Revision: 42942
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=42942
Author:   nazgul
Date:     2011-12-28 17:59:56 +0000 (Wed, 28 Dec 2011)
Log Message:
-----------
Fix #29696: Crash on exit of edit mode after deleting contents of fluid domain

Added NULL-check to copying material number and flags when loading cache

Modified Paths:
--------------
    trunk/blender/source/blender/modifiers/intern/MOD_fluidsim_util.c

Modified: trunk/blender/source/blender/modifiers/intern/MOD_fluidsim_util.c
===================================================================
--- trunk/blender/source/blender/modifiers/intern/MOD_fluidsim_util.c	2011-12-28 15:14:52 UTC (rev 42941)
+++ trunk/blender/source/blender/modifiers/intern/MOD_fluidsim_util.c	2011-12-28 17:59:56 UTC (rev 42942)
@@ -499,16 +499,20 @@
 	}
 
 	// assign material + flags to new dm
+	// if there's no faces in original dm, keep materials and flags unchanged
 	mface = orgdm->getFaceArray(orgdm);
-	mat_nr = mface[0].mat_nr;
-	flag = mface[0].flag;
 
-	mface = dm->getFaceArray(dm);
-	numfaces = dm->getNumFaces(dm);
-	for(i=0; i<numfaces; i++)
-	{
-		mface[i].mat_nr = mat_nr;
-		mface[i].flag = flag;
+	if(mface) {
+		mat_nr = mface[0].mat_nr;
+		flag = mface[0].flag;
+
+		mface = dm->getFaceArray(dm);
+		numfaces = dm->getNumFaces(dm);
+		for(i=0; i<numfaces; i++)
+			{
+				mface[i].mat_nr = mat_nr;
+				mface[i].flag = flag;
+			}
 	}
 
 	// load vertex velocities, if they exist...




More information about the Bf-blender-cvs mailing list