Why is Performer crashing?

New Message Reply Date view Thread view Subject view Author view

Robert Webb (robertw++at++wormald.COM.AU)
Mon, 19 Feb 1996 21:15:55 +1100 (EST)


Hi guys,

My Performer 2.0 application is crashing, and I don't know why. I have a
billboard with a number of geosets in it. I am setting the position within
the billboard of each geoset explicitly (I know there are some problems with
2.0 if you do not). It may well be something I am doing wrong, but I can't
see why Performer should ever die where it is dying. Here is the stack
trace:

> 0 pfVec3::xformVec(const pfVec3&,const pfMatrix&)(0x0, 0x10000c60, 0x7fff5ac0, 0x8, 0x1853bb20) ["../../../lib/libpr/pfLinMath.C":725, 0x5d14138c]
   1 pfSprite::pr_transform(pfGeoSet*)(0x185e2d60, 0x10000c60, 0x7fff5ac0, 0x8, 0xbbeb9c1f) ["../../../lib/libpr/pfSprite.C":1219, 0x5d105f08]
   2 genDrawGSet(pfGeoSet*,char*,char*,char*,char*)(0x0, 0x185f38e0, 0x7fff5ac0, 0x185f8d90, 0x10000c6c) ["../gsdraw.C":4493, 0x5d1043ec]
   3 pfGeoSet::pr_draw(pfGeoState*,pfDispList*,pfStatsValGeom*)(0x185e2d60, 0x1853bb20, 0x7fff5ac0, 0x18112844, 0x18112884) ["../../../lib/libpr/pfGeoSet.C":1700, 0x5d112d24]
   4 pfBillboard::pf_draw(pfGeoState*,pfDispList*,pfStatsValGeom*,int,_pfCuller*,pfVec3*)(0x183e4be0, 0x1853bb20, 0x0, 0x0, 0x0) ["../../../lib/libpf/pfBillboard.C":525, 0x5d111a40]
   5 _pfCuller::nb_draw(int)(0x183e4be0, 0x0, 0x5e0e5510, 0x5e0e5250, 0x0) ["../../../lib/libpf/pfCuller.C":1424, 0x5d1195e8]
   6 beginDraw(int)(0x183e4be0, 0xe9472be2, 0x3e078a5e, 0x1, 0x10010b30) ["../../../lib/libpf/pfProcess.C":3847, 0x5d13bed0]
   7 pfDraw(0x183e4be0, 0x1, 0x0, 0x5e0e0388, 0x4) ["../../../lib/libpf/pfProcess.C":3873, 0x5d1423ec]
   8 DrawChannel(channel = 0x1809b500, data = 0x18205060) ["draw_func.c":308, 0x41d770]
   9 pfChannel::pf_callDrawFunc()(0x403d6f05, 0x8626cb1a, 0x5e0e9bb0, 0x0, 0x0) ["../../../lib/libpf/pfChannel.C":1805, 0x5d13cde0]
  10 doDraw(pfChannel*)(0x1807f4c0, 0x5d143280, 0x5e0e9bb0, 0x53ca34, 0x403d6f05) ["../../../lib/libpf/pfProcess.C":3768, 0x5d13ad9c]
  11 appCullDraw(int)(0x49e, 0x5d143280, 0x5e0e9bb0, 0x0, 0x403d6e71) ["../../../lib/libpf/pfProcess.C":2402, 0x5d1cbd98]
  12 pfFrame(0x1, 0x5d143280, 0x5e0e9bb0, 0x0, 0x7fffac60) ["../../../lib/libpf/pfProcess.C":2703, 0x5d1ccbac]
  13 main(argc = 16, argv = 0x7fffaec4) ["main.c":495, 0x438138]

Notice that pfVec3::xformVec() is being called with a NULL vector when the
billboard calculation is being done. Can someone on the Performer team tell
me how I could be causing a NULL to make it down into this function? I am
using PFBB_POINT_ROT_WORLD billboards.

Note also that this bug has only appeared since we started using a separate
DBASE process, although this billboard is created and modified only in the
APP.

Thanks,
Rob.

 ____________________________________________________________________________
| ""--..__---....__ |
| _ "-._--,_ """"---...__ |
| |_) _ |_ _ ._ _|_ \ / _ |_ |_ "-. """--.._ ""--.|
| | \(_)|_)(/_| |_ \/\/ (/_|_)|_)o "-.--._ "-._ |
| "-. "-. "-._ |
| robertw++at++wormald.com.au ", "-. `.|
| ', "-_ |
| ', `. |
| "You don't have to put on clothes, ', `|
| Nobody has to hide, ', |
| 'coz everyone already knows" - Cat Stevens. \ |
| \ |
| \|
+----------------------------------------------------------------------------+


New Message Reply Date view Thread view Subject view Author view

This archive was generated by hypermail 2.0b2 on Mon Aug 10 1998 - 17:52:25 PDT

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