POV-Ray : Newsgroups : povray.beta-test : Linux Beta 28 segfaults on Slackware and Kubuntu : Re: Linux Beta 28 segfaults on Slackware and Kubuntu Server Time
29 Apr 2024 13:25:17 EDT (-0400)
  Re: Linux Beta 28 segfaults on Slackware and Kubuntu  
From: Nicolas Calimet
Date: 15 Sep 2008 19:25:44
Message: <48ceeef8$1@news.povray.org>
> beta28 source/backend/render/trace.cpp
> 1601 // If light source was not blocked by any intervening object, then
> 1602 // calculate it's contribution to the object's overall illumination.
> 1603 if ((qualityFlags & Q_SHADOW) && ((lightsource->Projected_Through_Object !=
> NULL) || (lightsource->Light_Type != FILL_LIGHT_SOURCE)))
> 1604 {
> 1605  if (lightColorCacheIndex != -1 && light_index != -1)
> 1606  {
> 1607   LightColorCache& lcc(lightColorCache[lightColorCacheIndex][light_index]);
> 1608   if (lcc.tested == false)
> 1609   {
> 1610    TraceShadowRay(lightsource, lightsourcedepth, lightsourceray, eye,
> ipoint, lightcolour);
> 1611    lcc.tested = true;
> 1612    lcc.colour = lightcolour;
> 1613   }
> 1614   else
> 1615    lightcolour = lcc.colour;
> 1616  }
> 1617  else
> 1618   TraceShadowRay(lightsource, lightsourcedepth, lightsourceray, eye,
> ipoint, lightcolour);
> 1619 }

	FWIW lately I've been investigating that very portion of code as the possible
cause for the reported crash, since light color cache for textures were re-introduced
in the most recent beta.  Your investigation seems to confirm my guess.  However,
so far and due to limited time, I did not manage to identify/understand why this
particular and related code may cause a segfault; e.g. lightColorCacheIndex and
light_index were in my tests never < -1 or too large when indexing the allocated
tables.

	Chris: any idea what could be wrong in here?

	- NC


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.