[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [56511] trunk/blender/source/blender/ blenloader/intern/readfile.c: Another correction to svn rev56509
Sergey Sharybin
sergey.vfx at gmail.com
Mon May 6 14:27:15 CEST 2013
Revision: 56511
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=56511
Author: nazgul
Date: 2013-05-06 12:27:14 +0000 (Mon, 06 May 2013)
Log Message:
-----------
Another correction to svn rev56509
Initial fix was not fully working, because faulty
edge shared the same address as screen area. This
lead to screen freeing issues -- double free (which
was supressed by guarded allocation actually) but
also freed memory access when iterating via edges
to free them.
Solved by a small hack which removes edges with bad
vertices from edges list. This prevents double-free
and freed memory access cased by corrupted files we're
currently fixing. In other cases this tweak is likely
be harmless -- in worst case scenario it'll lead to
small memory leak, which is not as much lethal as
freed memory access.
Revision Links:
--------------
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=56509
Modified Paths:
--------------
trunk/blender/source/blender/blenloader/intern/readfile.c
Modified: trunk/blender/source/blender/blenloader/intern/readfile.c
===================================================================
--- trunk/blender/source/blender/blenloader/intern/readfile.c 2013-05-06 11:38:21 UTC (rev 56510)
+++ trunk/blender/source/blender/blenloader/intern/readfile.c 2013-05-06 12:27:14 UTC (rev 56511)
@@ -6176,6 +6176,7 @@
if (se->v1 == NULL) {
printf("Error reading Screen %s... removing it.\n", sc->id.name+2);
+ BLI_remlink(&sc->edgebase, se);
wrong_id = true;
}
}
More information about the Bf-blender-cvs
mailing list