Hi Robert,

now it hangs at
// dispatch the rendering threads
    if (_startRenderingBarrier.valid()) _startRenderingBarrier->block();

the same method

Nick

http://www.linkedin.com/in/tnick
Sent from Istanbul, 34, Turkey

On Wed, Dec 23, 2009 at 6:04 PM, Robert Osfield <robert.osfi...@gmail.com>wrote:

> Hi Nick,
>
> Try calling stopThreading() before you remove the view, and
> startThreading() after you've done it.
>
> Robert.
>
> On Wed, Dec 23, 2009 at 3:46 PM, Trajce Nikolov
> <nikolov.tra...@gmail.com> wrote:
> > Hi Robert,
> > now I did it outside frame. Id doesnt crash anymore ... but, it hangs at
> > _endDynamicDrawBlock->block();
> > void ViewerBase::renderingTraversals()
> > after view removal
> > I have composite viewer
> >
> with 
> setThreadingModel(osgViewer::CompositeViewer::CullThreadPerCameraDrawThreadPerContext);
> > any ideas ?
> > Nick
> >
> > http://www.linkedin.com/in/tnick
> > Sent from Istanbul, 34, Turkey
> >
> > On Wed, Dec 23, 2009 at 3:14 PM, Robert Osfield <
> robert.osfi...@gmail.com>
> > wrote:
> >>
> >> Hi Nick,
> >>
> >> How are you removing the view?  From an event handler from within the
> >> view?  If so then this will crash as you'll be deleting the object you
> >> are doing the work from.
> >>
> >> The right way remove a view is outside of frame().
> >>
> >> Robert.
> >>
> >> On Wed, Dec 23, 2009 at 12:56 PM, Trajce Nikolov
> >> <nikolov.tra...@gmail.com> wrote:
> >> > here is the call stack
> >> >
> >> >
> >> >
> osg62-osgViewerd.dll!std::list<osg::ref_ptr<osgGA::GUIEventHandler>,std::allocator<osg::ref_ptr<osgGA::GUIEventHandler>
> >> >> >::begin()  Line 528 + 0x13 bytes C++
> >> >> osg62-osgViewerd.dll!osgViewer::CompositeViewer::eventTraversal()
>  Line
> >> >> 990 + 0x19 bytes C++
> >> >   osg62-osgViewerd.dll!osgViewer::ViewerBase::frame(double
> >> > simulationTime=1.7976931348623157e+308)  Line 637 + 0xf bytes C++
> >> >   KtIGLibOSGD.dll!RunThread::run()  Line 11 C++
> >> >
> >> > for(ViewEventsMap::iterator veitr = viewEventsMap.begin();
> >> >         veitr != viewEventsMap.end();
> >> >         ++veitr)
> >> >     {
> >> >         View* view = veitr->first;
> >> >         for(osgGA::EventQueue::Events::iterator itr =
> >> > veitr->second.begin();
> >> >             itr != veitr->second.end();
> >> >             ++itr)
> >> >         {
> >> >             osgGA::GUIEventAdapter* event = itr->get();
> >> >             for(View::EventHandlers::iterator hitr =
> >> > view->getEventHandlers().begin();
> >> >                 hitr != view->getEventHandlers().end();
> >> >                 ++hitr)
> >> >             {
> >> >
>  (*hitr)->handleWithCheckAgainstIgnoreHandledEventsMask(
> >> > *event, *view, 0, 0);
> >> >             }
> >> >         }
> >> >     }
> >> > crashes on line 997
> >> > Nick
> >> >
> >> > http://www.linkedin.com/in/tnick
> >> >
> >> > _______________________________________________
> >> > osg-users mailing list
> >> > osg-users@lists.openscenegraph.org
> >> >
> >> >
> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
> >> >
> >> >
> >> _______________________________________________
> >> osg-users mailing list
> >> osg-users@lists.openscenegraph.org
> >>
> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
> >
> >
> > _______________________________________________
> > osg-users mailing list
> > osg-users@lists.openscenegraph.org
> >
> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
> >
> >
> _______________________________________________
> osg-users mailing list
> osg-users@lists.openscenegraph.org
> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
>
_______________________________________________
osg-users mailing list
osg-users@lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to