Hi Morne,

Can you get osgshadow to crash?  If others can redproduce this problem
there the chances of fixing it promptly go up.

Robert.

On Fri, Jan 30, 2009 at 4:33 PM, Morné Pistorius
<[email protected]> wrote:
> Hi guys,
>
> I am testing the current trunk version of OSG in my application (was
> previously using v2.6.1) and I get a crash on shutdown when trying to
> destroy a osgShadow::ShadowedScene.  This only occurs when I have a
> shadowTechnique set and is caused by destroying the shader program.  I
> am using OSG in Qt derived from a QGLWidget  (yes I know I should
> rather use the QWidget implementation, I am busy porting to that, but
> this used to work fine in 2.6.1 so I thought I would flag it :)
>
> I will see if this still happens when not using the GL Adapterwidget,
> and report back.
>
> Below is a stack trace of the relevant bits:
>
>>       osg54-osg.dll!osg::Referenced::~Referenced()  Line 262 + 0x5 bytes     
>>  C++
>        osg54-osg.dll!osg::Program::PerContextProgram::~PerContextProgram()
> Line 425 + 0x14b bytes  C++
>        osg54-osg.dll!osg::Program::PerContextProgram::`vector deleting
> destructor'()  + 0x3d bytes     C++
>        
> osg54-osg.dll!std::_Destroy_range<osg::ref_ptr<osg::Program::PerContextProgram>,std::allocator<osg::ref_ptr<osg::Program::PerContextProgram>
>> >(osg::ref_ptr<osg::Program::PerContextProgram> * _First=0x02eb7b48,
> osg::ref_ptr<osg::Program::PerContextProgram> * _Last=0x02eb7b50,
> std::allocator<osg::ref_ptr<osg::Program::PerContextProgram> > &
> _Al={...}, std::_Nonscalar_ptr_iterator_tag __formal={...})  Line 235
> + 0x30 bytes    C++
>        osg54-osg.dll!osg::Program::~Program()  Line 122 + 0xa8 bytes   C++
>        osg54-osgShadow.dll!osg::Program::`scalar deleting destructor'()  +
> 0x9 bytes       C++
>        osg54-osg.dll!std::_Tree<std::_Tmap_traits<std::pair<enum
> osg::StateAttribute::Type,unsigned
> int>,std::pair<osg::ref_ptr<osg::StateAttribute>,unsigned
> int>,std::less<std::pair<enum osg::StateAttribute::Type,unsigned int>
>>,std::allocator<std::pair<std::pair<enum
> osg::StateAttribute::Type,unsigned int> const
> ,std::pair<osg::ref_ptr<osg::StateAttribute>,unsigned int> > >,0>
>>::_Erase(std::_Tree_nod<std::_Tmap_traits<std::pair<enum
> osg::StateAttribute::Type,unsigned
> int>,std::pair<osg::ref_ptr<osg::StateAttribute>,unsigned
> int>,std::less<std::pair<enum osg::StateAttribute::Type,unsigned int>
>>,std::allocator<std::pair<std::pair<enum
> osg::StateAttribute::Type,unsigned int> const
> ,std::pair<osg::ref_ptr<osg::StateAttribute>,unsigned int> > >,0>
>>::_Node * _Rootnode=0x02eb7bf8)  Line 1078     C++
>        osg54-osg.dll!osg::StateSet::clear()  Line 556 + 0x26 bytes     C++
>        osg54-osg.dll!osg::StateSet::~StateSet()  Line 173      C++
>        osg54-osgShadow.dll!osg::StateSet::`scalar deleting destructor'()  +
> 0x9 bytes       C++
>        osg54-osg.dll!osg::Referenced::unref()  Line 176 + 0xf bytes    C++
>        osg54-osgShadow.dll!osgShadow::ShadowMap::~ShadowMap()  Line 91 +
> 0xfb bytes      C++
>        osg54-osgShadow.dll!osgShadow::SoftShadowMap::~SoftShadowMap()  Line
> 73 + 0x7e bytes C++
>        RiverTestApp.exe!osgShadow::SoftShadowMap::`scalar deleting
> destructor'()  + 0x10 bytes     C++
>        osg54-osg.dll!osg::Referenced::unref()  Line 176 + 0xf bytes    C++
>        
> osg54-osgShadow.dll!osgShadow::ShadowedScene::setShadowTechnique(osgShadow::ShadowTechnique
> * technique=0x00000000)  Line 76        C++
>        osg54-osgShadow.dll!osgShadow::ShadowedScene::~ShadowedScene()  Line 
> 50 C++
>        RiverTestApp.exe!VOSGShadowedScene::~VOSGShadowedScene()  + 0x10 bytes 
>  C++
>        RiverTestApp.exe!VOSGShadowedScene::`scalar deleting destructor'()
> + 0xf bytes     C++
>        
> osg54-osg.dll!std::_Destroy_range<osg::ref_ptr<osg::Node>,std::allocator<osg::ref_ptr<osg::Node>
>> >(osg::ref_ptr<osg::Node> * _First=0x02e74f50,
> osg::ref_ptr<osg::Node> * _Last=0x02e74f5c,
> std::allocator<osg::ref_ptr<osg::Node> > & _Al={...},
> std::_Nonscalar_ptr_iterator_tag __formal={...})  Line 235 + 0x30
> bytes   C++
>        osg54-osg.dll!osg::Group::~Group()  Line 53 + 0x26 bytes        C++
>        RiverTestApp.exe!VOSGScene::~VOSGScene()  Line 25 + 0x19 bytes  C++
>        RiverTestApp.exe!VRiver3DScene::~VRiver3DScene()  Line 103 + 0x21 
> bytes C++
>        RiverTestApp.exe!VRiver3DScene::`scalar deleting destructor'()  +
> 0xf bytes       C++
>        osg54-osg.dll!osg::Referenced::unref()  Line 176 + 0xf bytes    C++
>        RiverTestApp.exe!osg::ref_ptr<VOSGScene>::~ref_ptr<VOSGScene>()
> Line 33 + 0x1a bytes    C++
>
> Cheers,
> Morne
> _______________________________________________
> osg-users mailing list
> [email protected]
> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
>
_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to