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);

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to