[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [30681] trunk/blender/source/blender: bugfix [#22990] Crash rendering joined curves

Campbell Barton ideasman42 at gmail.com
Sat Jul 24 04:27:47 CEST 2010


Revision: 30681
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=30681
Author:   campbellbarton
Date:     2010-07-24 04:27:43 +0200 (Sat, 24 Jul 2010)

Log Message:
-----------
bugfix [#22990] Crash rendering joined curves
- dont render invalid material indicies (like mesh faces)
- clamp the material index values when joining, TODO: merge material lists properly.

Modified Paths:
--------------
    trunk/blender/source/blender/editors/curve/editcurve.c
    trunk/blender/source/blender/render/intern/source/convertblender.c

Modified: trunk/blender/source/blender/editors/curve/editcurve.c
===================================================================
--- trunk/blender/source/blender/editors/curve/editcurve.c	2010-07-24 01:32:03 UTC (rev 30680)
+++ trunk/blender/source/blender/editors/curve/editcurve.c	2010-07-24 02:27:43 UTC (rev 30681)
@@ -4843,6 +4843,7 @@
 					nu= cu->nurb.first;
 					while(nu) {
 						newnu= duplicateNurb(nu);
+						CLAMP(newnu->mat_nr, 0, ob->totcol-1); /* TODO, merge material lists */
 						BLI_addtail(&tempbase, newnu);
 						
 						if( (bezt= newnu->bezt) ) {

Modified: trunk/blender/source/blender/render/intern/source/convertblender.c
===================================================================
--- trunk/blender/source/blender/render/intern/source/convertblender.c	2010-07-24 01:32:03 UTC (rev 30680)
+++ trunk/blender/source/blender/render/intern/source/convertblender.c	2010-07-24 02:27:43 UTC (rev 30681)
@@ -2848,7 +2848,10 @@
 		}
 
 		while(dl) {
-			if(dl->type==DL_INDEX3) {
+			if(dl->col > ob->totcol) {
+				/* pass */
+			}
+			else if(dl->type==DL_INDEX3) {
 				int *index;
 
 				startvert= obr->totvert;





More information about the Bf-blender-cvs mailing list