[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [14111] trunk/blender/source/blender/ blenkernel/intern/mesh.c: fixed a possible use of uninitialized orco coords if the mesh has more totverts then keyblock elements .
Campbell Barton
ideasman42 at gmail.com
Fri Mar 14 19:16:54 CET 2008
Revision: 14111
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=14111
Author: campbellbarton
Date: 2008-03-14 19:16:54 +0100 (Fri, 14 Mar 2008)
Log Message:
-----------
fixed a possible use of uninitialized orco coords if the mesh has more totverts then keyblock elements.
Modified Paths:
--------------
trunk/blender/source/blender/blenkernel/intern/mesh.c
Modified: trunk/blender/source/blender/blenkernel/intern/mesh.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/mesh.c 2008-03-14 18:08:27 UTC (rev 14110)
+++ trunk/blender/source/blender/blenkernel/intern/mesh.c 2008-03-14 18:16:54 UTC (rev 14111)
@@ -1109,9 +1109,13 @@
if(me->key && me->key->refkey) {
if(numVerts_r) *numVerts_r= me->totvert;
- cos= MEM_mallocN(sizeof(*cos)*me->totvert, "vertexcos1");
-
+
kb= me->key->refkey;
+
+ /* prevent accessing invalid memory */
+ if (me->totvert > kb->totelem) cos= MEM_callocN(sizeof(*cos)*me->totvert, "vertexcos1");
+ else cos= MEM_mallocN(sizeof(*cos)*me->totvert, "vertexcos1");
+
totvert= MIN2(kb->totelem, me->totvert);
memcpy(cos, kb->data, sizeof(*cos)*totvert);
More information about the Bf-blender-cvs
mailing list