Fix T41691: Blender-internal crash (counting edges)
authorCampbell Barton <ideasman42@gmail.com>
Wed, 3 Sep 2014 07:31:58 +0000 (17:31 +1000)
committerCampbell Barton <ideasman42@gmail.com>
Wed, 3 Sep 2014 07:33:37 +0000 (17:33 +1000)
source/blender/render/intern/source/convertblender.c

index 55146162f2544af6a3a02784064bd7506b652032..e6f054583b1f07d849f13510e4e76f0983723638 100644 (file)
@@ -2930,8 +2930,7 @@ static struct edgesort *make_mesh_edge_lookup(DerivedMesh *dm, int *totedgesort)
 
        /* make sorted table with edges and face indices in it */
        for (a= totface, mf= mface; a>0; a--, mf++) {
-               if (mf->v4) totedge+=4;
-               else if (mf->v3) totedge+=3;
+               totedge += mf->v4 ? 4 : 3;
        }
 
        if (totedge==0)
@@ -2946,8 +2945,9 @@ static struct edgesort *make_mesh_edge_lookup(DerivedMesh *dm, int *totedgesort)
                        to_edgesort(ed++, 2, 3, mf->v3, mf->v4, a);
                        to_edgesort(ed++, 3, 0, mf->v4, mf->v1, a);
                }
-               else if (mf->v3)
+               else {
                        to_edgesort(ed++, 2, 3, mf->v3, mf->v1, a);
+               }
        }
 
        qsort(edsort, totedge, sizeof(struct edgesort), vergedgesort);