|
|
Hello,
inspired by the article of Eric Freeman I've run his scene through megapov
using purify. It reveiled that there is "uninitiaized memory read". More
precisely, in the function BacktraceRefract in lighting.c only the
rgb values of lc are initialized. The transmit value is however used
in Determine_Apparent_Colour when
Colour[TRANSM] *= C1[TRANSM];
is calculated. I don't know much about how all this stuff works, so I
leave it so someone else to fix this.
Furthermore, I didn't care about other errors that were reported, because
this one flooded the screen with error messages. I also don't know whether
a fix of this problem also solves Eric's problem.
Thomas
--
http://thomas.willhalm.de/ (includes pgp key)
Post a reply to this message
|
|
|
|
Thomas Willhalm <tho### [at] willhalmde> wrote...
>
> Hello,
>
> inspired by the article of Eric Freeman I've run his scene through megapov
> using purify. It reveiled that there is "uninitiaized memory read". More
> precisely, in the function BacktraceRefract in lighting.c only the
> rgb values of lc are initialized. The transmit value is however used
> in Determine_Apparent_Colour when
>
> Colour[TRANSM] *= C1[TRANSM];
>
During the photon-tracing step (when BacktraceRefract is called), the
transmit and filter channels of Colour are ignored (i.e. the value that
Determine_Apparent_Colour places in Colour[TRANSM] is never used), so this
shouldn't cause a problem.
-Nathan
Post a reply to this message
|
|