On Tue, 29 Jun 2004, Hagen Gadke wrote: Hi!
Thanks for your time. > if your code compiles, then _textures is a multi field of > NodePtr, not a multi field of textures. True. I did some typeid-ing so we know what we're talking about: typeid(i)=N9__gnu_cxx17__normal_iteratorIPN3osg7NodePtrESt6vectorIS2_SaIS2_EEEE typeid(*i)=N3osg7NodePtrE typeid(**i)=N3osg12TextureChunkE > for(MFNodePtr::iterator i=_textures.begin();i!=_textures.end();i++) > ^^^^^^^^^ > > So it's not surprising that you get problems when you cast *i > to a TextureChunkPtr. Well, it is (to me, anyway). :) I actually want a TextureChunkPtr, which is typedef'd from Ptr. Which makes it the same type as NodePtr (which is also typedef'd from Ptr). As we've seen above, the NodePtr *i points to a TextureChunk **i. That seems to make it a TextureChunkPtr. If it doesn't, what do I have to do, to cast it? Tobias > -----Original Message----- > From: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] Behalf Of Tobias > Berghoff > Sent: Montag, 28. Juni 2004 20:49 > To: [email protected] > Subject: [Opensg-users] Segfault at endEditCP > > > Hallo! > > Probably a serious braino, but anyway: > I've changed part of the VRML loader and get a segmentation fault when > calling endEditCP. > The Code looks like this: > > _textures contains one texture at this point, btw. > > > std::cerr<<"setting textures\n"; > beginEditCP(pChunkMat, ChunkMaterial::ChunksFieldMask); > { > for(MFNodePtr::iterator i=_textures.begin();i!=_textures.end();i++) > { > std::cerr<<"trying...\n"; > TextureChunkPtr pTexture = TextureChunkPtr::dcast(*i); > pChunkMat->addChunk(pTexture); > std::cerr<<"added texture\n"; > } > } > std::cerr<<"before endEditCP "<<pChunkMat<<"\n"; > endEditCP(pChunkMat, ChunkMaterial::ChunksFieldMask); > std::cerr<<"textures done\n"; > > Which generates this output: > > setting textures FCPtr 0x0xbfffe840:ChunkMaterialPtr(0x0x8163eb0) > trying... > added texture > before endEditCP FCPtr 0x0xbfffe840:ChunkMaterialPtr(0x0x8163eb0) > Speicherzugriffsfehler (aka segfault) > > Any quick idea, or do I have to work myself through the code of endEditCP? > :) > > Tobias > > > > > ------------------------------------------------------- > This SF.Net email sponsored by Black Hat Briefings & Training. > Attend Black Hat Briefings & Training, Las Vegas July 24-29 - > digital self defense, top technical experts, no vendor pitches, > unmatched networking opportunities. Visit www.blackhat.com > _______________________________________________ > Opensg-users mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/opensg-users > > > > ------------------------------------------------------- > This SF.Net email sponsored by Black Hat Briefings & Training. > Attend Black Hat Briefings & Training, Las Vegas July 24-29 - > digital self defense, top technical experts, no vendor pitches, > unmatched networking opportunities. Visit www.blackhat.com > _______________________________________________ > Opensg-users mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/opensg-users > ------------------------------------------------------- This SF.Net email sponsored by Black Hat Briefings & Training. Attend Black Hat Briefings & Training, Las Vegas July 24-29 - digital self defense, top technical experts, no vendor pitches, unmatched networking opportunities. Visit www.blackhat.com _______________________________________________ Opensg-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/opensg-users
