[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [37970] trunk/blender/source/blender/ render/intern/source/convertblender.c: fix/workaround [#27807] bake malloc loop if Deep Shadow && strand && children
Campbell Barton
ideasman42 at gmail.com
Thu Jun 30 04:02:19 CEST 2011
Revision: 37970
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=37970
Author: campbellbarton
Date: 2011-06-30 02:02:16 +0000 (Thu, 30 Jun 2011)
Log Message:
-----------
fix/workaround [#27807] bake malloc loop if Deep Shadow && strand && children
render strands use the window matrix and window size which were both zero while baking, this caused divides by 0 and eternal malloc loop.
So set unit window matrix and dummy view size.
This is more a workaround then a fix but avoids crashing.
Modified Paths:
--------------
trunk/blender/source/blender/render/intern/source/convertblender.c
Modified: trunk/blender/source/blender/render/intern/source/convertblender.c
===================================================================
--- trunk/blender/source/blender/render/intern/source/convertblender.c 2011-06-30 01:40:20 UTC (rev 37969)
+++ trunk/blender/source/blender/render/intern/source/convertblender.c 2011-06-30 02:02:16 UTC (rev 37970)
@@ -5737,7 +5737,15 @@
unit_m4(mat);
RE_SetView(re, mat);
}
-
+ copy_m3_m4(re->imat, re->viewinv);
+
+ /* TODO: deep shadow maps + baking + strands */
+ /* strands use the window matrix and view size, there is to correct
+ * window matrix but at least avoids malloc and crash loop [#27807] */
+ unit_m4(re->winmat);
+ re->winx= re->winy= 256;
+ /* done setting dummy values */
+
init_render_world(re); /* do first, because of ambient. also requires re->osa set correct */
if(re->r.mode & R_RAYTRACE) {
init_render_qmcsampler(re);
More information about the Bf-blender-cvs
mailing list