The Persistence of Vision Raytracer (POV-Ray).
This is the Bug Tracking System for the POV-Ray project. Before opening a new task, please read How to make a Bug Report
Please do not issue bugs reports against versions earlier than 3.6.
FS#15 - julia fractal, trace and inside cause crash
Attached to Project:
POV-Ray
Opened by Tim Attwood (TimA) - Saturday, 09 May 2009, 22:59 GMT
Last edited by Chris Cason (chrisc) - Sunday, 07 June 2009, 09:51 GMT
Opened by Tim Attwood (TimA) - Saturday, 09 May 2009, 22:59 GMT
Last edited by Chris Cason (chrisc) - Sunday, 07 June 2009, 09:51 GMT
|
DetailsUsing trace or inside with a julia fractal causes a crash.
#declare Test = julia_fractal {
<-0.083,0.0,-0.83,-0.025>
quaternion
cube
max_iteration 8
precision 20
};
#declare Norm = <0,0,0>;
#declare Hit = trace(Test,<0,0,-10>,z,Norm);
#declare Center = inside(Test,<0,0,0>);
|
This task depends upon
Closed by Chris Cason (chrisc)
Sunday, 07 June 2009, 09:51 GMT
Reason for closing: Fixed
Additional comments about closing: Fixed in change #4811.
Sunday, 07 June 2009, 09:51 GMT
Reason for closing: Fixed
Additional comments about closing: Fixed in change #4811.
confirmed with beta.32 based development version
The bug is due to the size of stack in the parser thread (already created) not being updated when the depth needed for a fractal is increased.
When trace is used later, as the intersection stack is too short (in fact, default to none), it's crashing.
Attached is a patch for beta 32 source.
Proposal of at least a workaround (I find it ugly but it works), based on beta 32:
Updating the parser-thread Stack at the same time as the limit of stack is updated.
For rendering threads, they will use, as previously, the stack allocated from the limit.
Why it's ugly: the fractal object need to know about the parser!