[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [31017] trunk/blender/source/blender/ editors/transform: bugfix [#23158] Translate operator leaks memory if nothing selected
Campbell Barton
ideasman42 at gmail.com
Wed Aug 4 00:36:59 CEST 2010
Revision: 31017
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=31017
Author: campbellbarton
Date: 2010-08-04 00:36:59 +0200 (Wed, 04 Aug 2010)
Log Message:
-----------
bugfix [#23158] Translate operator leaks memory if nothing selected
Modified Paths:
--------------
trunk/blender/source/blender/editors/transform/transform.c
trunk/blender/source/blender/editors/transform/transform_ops.c
Modified: trunk/blender/source/blender/editors/transform/transform.c
===================================================================
--- trunk/blender/source/blender/editors/transform/transform.c 2010-08-03 22:26:44 UTC (rev 31016)
+++ trunk/blender/source/blender/editors/transform/transform.c 2010-08-03 22:36:59 UTC (rev 31017)
@@ -1460,6 +1460,7 @@
}
}
+/* note: caller needs to free 't' on a 0 return */
int initTransform(bContext *C, TransInfo *t, wmOperator *op, wmEvent *event, int mode)
{
int options = 0;
Modified: trunk/blender/source/blender/editors/transform/transform_ops.c
===================================================================
--- trunk/blender/source/blender/editors/transform/transform_ops.c 2010-08-03 22:26:44 UTC (rev 31016)
+++ trunk/blender/source/blender/editors/transform/transform_ops.c 2010-08-03 22:36:59 UTC (rev 31017)
@@ -281,7 +281,7 @@
int retval = 1;
if (op->customdata == NULL)
{
- TransInfo *t = MEM_callocN(sizeof(TransInfo), "TransInfo data");
+ TransInfo *t = MEM_callocN(sizeof(TransInfo), "TransInfo data2");
TransformModeItem *tmode;
int mode = -1;
@@ -303,7 +303,12 @@
G.moving = 1;
/* store data */
- op->customdata = t;
+ if(retval) {
+ op->customdata = t;
+ }
+ else {
+ MEM_freeN(t);
+ }
}
return retval; /* return 0 on error */
More information about the Bf-blender-cvs
mailing list