[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [28578] trunk/blender/source/blender: billboards were using un-initialized memory and avoid divide by zero in some cases .
Campbell Barton
ideasman42 at gmail.com
Tue May 4 23:10:26 CEST 2010
Revision: 28578
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=28578
Author: campbellbarton
Date: 2010-05-04 23:10:26 +0200 (Tue, 04 May 2010)
Log Message:
-----------
billboards were using un-initialized memory and avoid divide by zero in some cases.
Modified Paths:
--------------
trunk/blender/source/blender/blenkernel/intern/particle.c
trunk/blender/source/blender/editors/interface/view2d.c
Modified: trunk/blender/source/blender/blenkernel/intern/particle.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/particle.c 2010-05-04 16:54:00 UTC (rev 28577)
+++ trunk/blender/source/blender/blenkernel/intern/particle.c 2010-05-04 21:10:26 UTC (rev 28578)
@@ -1137,6 +1137,9 @@
int point_vel = (point && point->keys->vel);
float real_t, dfra, keytime;
+ /* billboards wont fill in all of these, so start cleared */
+ memset(keys, 0, sizeof(keys));
+
/* interpret timing and find keys */
if(point) {
if(result->time < 0.0f)
Modified: trunk/blender/source/blender/editors/interface/view2d.c
===================================================================
--- trunk/blender/source/blender/editors/interface/view2d.c 2010-05-04 16:54:00 UTC (rev 28577)
+++ trunk/blender/source/blender/editors/interface/view2d.c 2010-05-04 21:10:26 UTC (rev 28578)
@@ -1389,6 +1389,7 @@
/* scroller 'button' extents */
totsize= v2d->tot.xmax - v2d->tot.xmin;
scrollsize= (float)(hor.xmax - hor.xmin);
+ if(totsize==0.0f) totsize = 1.0f; /* avoid divide by zero */
fac1= (v2d->cur.xmin - v2d->tot.xmin) / totsize;
if(fac1<=0.0f)
@@ -1429,6 +1430,7 @@
/* scroller 'button' extents */
totsize= v2d->tot.ymax - v2d->tot.ymin;
scrollsize= (float)(vert.ymax - vert.ymin);
+ if(totsize==0.0f) totsize = 1.0f; /* avoid divide by zero */
fac1= (v2d->cur.ymin- v2d->tot.ymin) / totsize;
if(fac1<=0.0f)
More information about the Bf-blender-cvs
mailing list