Manta Interactive Ray Tracer Development Mailing List

Text archives Help


[Manta] Re: Dll loading and Thread self fails


Chronological Thread 
  • From: Abe Stephens < >
  • To:
  • Subject: [Manta] Re: Dll loading and Thread self fails
  • Date: Wed, 29 Oct 2008 10:07:59 -0600

My guess is that this is an initialization problem with some of the static variables in Thread, possibly related to how the dlls are loaded.

To debug, it might be useful to disable the exception handler which is printing the stack trace. This mechanism is leftover from a SCIRun dependency and is easily disabled with an environment variable: THREAD_NO_CATCH_SIGNAL=1.  Toss the program in a debugger and take a look at those static variables. The suspect functions are self() in Thread_win32.cc and couldBlock() in Thread.cc.

Abe


On Oct 29, 2008, at 9:34 AM, Bo Huang wrote:

Hi
 
In Scene* Factory::readMOScene(), after successfully loading a .dll such as scene_0.dll, and locating the dll’s ‘make_scene’ function, a valid Scene object is generated for RTRT.
 
However, when rendering starts, I get the Thread crash as shown in the attached image.
 
This crash does not occur if I do not load the ‘make_scene’ function from a dll, and instead include 0.cc, which contains the ‘make_scene’ source to be compiled into Factory.cc.
 
I understand this is more Windows centric. I would be interested in knowing how come Thread::couldBlock() self fails and the meaning.
 
Thanks
 
Bo
<manta_thread_crash.PNG>




Archive powered by MHonArc 2.6.16.

Top of page