# HG changeset patch # User xerces # Date 1333401336 14400 # Node ID eaeccd9de46aad780b171030aad3c30b3636fcee # Parent 45409a371207d4bb0f1b20c058cec320fc889e7f imported patch transform_leak diff -r 45409a371207 -r eaeccd9de46a source/blender/editors/transform/transform.c --- a/source/blender/editors/transform/transform.c Mon Apr 02 17:15:36 2012 -0400 +++ b/source/blender/editors/transform/transform.c Mon Apr 02 17:15:36 2012 -0400 @@ -4428,6 +4428,8 @@ } if (numsel == 0 || numsel > 2) { + MEM_freeN(sld); + BMBVH_FreeBVH(btree); return 0; //invalid edge selection } } @@ -4435,8 +4437,11 @@ BM_ITER(e, &iter, em->bm, BM_EDGES_OF_MESH, NULL) { if (BM_elem_flag_test(e, BM_ELEM_SELECT)) { - if (BM_edge_face_count(e) != 2) - return 0; //can only handle exactly 2 faces around each edge + if (BM_edge_face_count(e) != 2) { + MEM_freeN(sld); + BMBVH_FreeBVH(btree); + return 0; //can only handle exactly 2 faces around each edge + } } } @@ -4452,8 +4457,11 @@ } } - if (!j) + if (!j) { + MEM_freeN(sld); + BMBVH_FreeBVH(btree); return 0; + } tempsv = MEM_callocN(sizeof(TransDataSlideVert)*j, "tempsv");