Head of CVS refuses to load bam files


Today we have been trying to sync up our internal build of Panda with the head of the CVS tree. Everything seems to be compiling clean however we are unable to load .bam files. To be sure, I compiled a clean copy of the latest head as of an hour or so ago and it is still failing, so we can be sure it is not some change that we’ve made to the engine.

The error we are receiving is “The exception unknown software exception (0xc000000d) occured in the application at location 0x78138a8c.”

The debugger is not being too forthcoming either- the last line I can trace the error to within Panda is bamreader.cxx line 1123:

int num_completed = object->complete_pointers(&references[0], this);

We are only dying on loading .bam files- .egg files appear to load perfectly fine. At least the first time they do- on subsequent loads they fail but that is almost certainly because of the model caching system that is trying to load the cached bam instead.

Any thoughts on this? Any help is appreciated!


  • lem

I have been mucking around in that part of the code lately, and in fact I checked in a bugfix this morning fixing certain crashes when loading bam files. I’m able to load bam files without problems now.

Maybe there’s something unusual about your bam files? Can you post a sample bam file somewhere where I can try it out?


Hi David,

It would be unusual for it to be something wrong with the specific bam files- I’ve tried using egg2bam.exe out of what I compiled yesterday, to produce fresh bam files out of some standard models- they still don’t load. Neither can I load old bam files that worked in old versions of Panda.

I ran the shipped smiley.egg through egg2bam and uploaded it though, you can grab it here: http://www.puchiko.org/tmp/panda/… Hopefully you can make something out of it!


  • lem

I am able to load your smiley.bam file without difficulties.

Are you sure that you are (a) on the head of the tree and (b) built correctly? Do you have any unusual build flags, like threading, perhaps, enabled?


We’re definitely on the head of the tree… I did another cvs update this morning and rebuilt- still the same problem.

For testing purposes I am building with ‘makepanda --everything --installer’ (we do normally do things a bit differently, but I rebuilt in the standard fashion before posting since I wanted to make sure the problem wasn’t something we broke).

Only things I can think of are that maybe there is something being done differently in makepanda than in ppremake, or that something else on my machine is fouling up the build. I’m going to try and run the build process on a different machine and see what happens, but it’s doubtful that I’ll be able to do that until Monday. I’ll keep you posted.

Thanks again,

  • lem

I believe I found it. You’re compiling with VS2005, aren’t you? I believe this crash is specific to that compiler.

I’ve just checked in a fix to panda/src/putil/bamReader.cxx.


Thanks David, yes, we are compiling with VS2005. Your fix appears to have worked!

Running into issues with some small changes in the API now… but that is another issue/thread :slight_smile:


  • lem