[info-performer] Null 'this' pointer deep in Performer?

New Message Reply Date view Thread view Subject view Author view

From: Don Tidrow (dtidrow++at++nvl.army.mil)
Date: 06/04/2002 17:30:38


I'm having a problem running a Performer-based app in multiprocess mode on Linux -
it keeps segfaulting in the child process. Here's a backtrace of the core dump:

#0 0x40410f46 in pfLightSource::nb_setColor(int, float, float, float) (this=0x0,
    which=4608, r=0.280050308, g=0.280050308, b=0.280050308) at ../pfLightSource.C:387
#1 0x080feabb in pfLightSource::setColor(int, float, float, float) (this=0x452e1a60,
    _which=4608, _r=0.280050308, _g=0.280050308, _b=0.280050308) at
    /usr/include/Performer/pf/pfLightSource.h:76
#2 0x080cca56 in MtlManager::updateMaterials() (this=0x44a076e8) at MtlManager.cpp:728
#3 0x080cd0d2 in MtlManager::update() (this=0x44a076e8) at MtlManager.cpp:804
#4 0x080b837d in SigSim::update() (this=0x42b586b4) at SigSim.cpp:561
#5 0x080d2802 in main (argc=9, argv=0xbfffe4d4) at SigMain.cpp:332
#6 0x42a3e627 in __libc_start_main (main=0x80d1db0 <main>, argc=9, ubp_av=0xbfffe4d4,
    init=0x80a6288 <_init>, fini=0x810339c <_fini>, rtld_fini=0x4000dcc4 <_dl_fini>,
    stack_end=0xbfffe4cc) at ../sysdeps/generic/libc-start.c:129

Note that the "this" pointer in pfLightSource::nb_setColor() is null, and yet the "this"
pointer in pfLightSource::setColor() is reasonable - any idea what conditions might cause
this? This code is virtually identical to an IRIX version that's been working fine -
could trying to run multiprocess mode on a single-cpu Linux box make any difference (can't
imagine it would)?

Don

-- 

Klein bottle for rent - inquire within.

-------------------------------------------- | Don Tidrow | | Visual Simulation Developer | | US Army CECOM-NVESD | | ph: (703)704-1361 fax: (703)704-1753 | --------------------------------------------


New Message Reply Date view Thread view Subject view Author view

This archive was generated by hypermail 2b29 : Tue Jun 04 2002 - 17:31:06 PDT

This message has been cleansed for anti-spam protection. Replace '++at++' in any mail addresses with the '@' symbol.