Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
OpenWalnut Core OpenWalnut Core
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 82
    • Issues 82
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Analytics
    • Analytics
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Members
    • Members
  • Activity
  • Graph
  • Create a new issue
  • Commits
  • Issue Boards
Collapse sidebar
  • OpenWalnut
  • OpenWalnut CoreOpenWalnut Core
  • Issues
  • #327

Closed
Open
Created Sep 22, 2011 by Sebastian Volke@volkeOwner

-RM-90-MR-Isosurface crashes when changing parameters in the gui during re-calc

The isosurface algorithm crashes when interacting with toggling the use texture flag.

Reproduction:

  • Load a scalar data set
  • run the isosurface algorithm so it creates geometry and wait until it has finished
  • re-run the algorithm, e.g., by changing the isovalue
  • during the graphics update (after the old surface disappears but no new geometry shown, yet), toggle the flag

It seems as if a callback is called on the old geometry.

backtrace:

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff790339b in WGEShaderPropertyDefineOptions >, WGEShaderPropertyDefineOptionsIndexAdapter > > >::propUpdated (this=0x7fffb697e2d0) at /local_home/l_hlawit/Uni/Leipzig/OpenWalnut/src/core/graphicsEngine/postprocessing/../shaders/WGEShaderPropertyDefineOptions.h:249
249	    setActivationList( functor( m_property->get() ) );
(gdb) bt
#0  0x00007ffff790339b in WGEShaderPropertyDefineOptions >, WGEShaderPropertyDefineOptionsIndexAdapter > > >::propUpdated (this=0x7fffb697e2d0)
    at /local_home/l_hlawit/Uni/Leipzig/OpenWalnut/src/core/graphicsEngine/postprocessing/../shaders/WGEShaderPropertyDefineOptions.h:249
#1  0x00007ffff79068ad in boost::_mfi::mf0 >, WGEShaderPropertyDefineOptionsIndexAdapter > > > >::operator() (this=0x7fffb697e570, p=0x7fffb697e2d0)
    at /usr/include/boost/bind/mem_fn_template.hpp:49
#2  0x00007ffff7906566 in boost::_bi::list1 >, WGEShaderPropertyDefineOptionsIndexAdapter > > >*> >::operator() >, WGEShaderPropertyDefineOptionsIndexAdapter > > > >, boost::_bi::list0> (this=0x7fffb697e580, f=..., a=...) at /usr/include/boost/bind/bind.hpp:253
#3  0x00007ffff7905f63 in boost::_bi::bind_t >, WGEShaderPropertyDefineOptionsIndexAdapter > > > >, boost::_bi::list1 >, WGEShaderPropertyDefineOptionsIndexAdapter > > >*> > >::operator() (this=0x7fffb697e570) at /usr/include/boost/bind/bind_template.hpp:20
#4  0x00007ffff7905566 in boost::detail::function::void_function_obj_invoker0 >, WGEShaderPropertyDefineOptionsIndexAdapter > > > >, boost::_bi::list1 >, WGEShaderPropertyDefineOptionsIndexAdapter > > >*> > >, void>::invoke (
    function_obj_ptr=...) at /usr/include/boost/function/function_template.hpp:153
#5  0x00007ffff774495b in boost::function0::operator() (this=0x7fffb697e568)
    at /usr/include/boost/function/function_template.hpp:1013
#6  0x00007ffff783574d in boost::signals2::detail::signal0_impl, int, std::less, boost::function, boost::function, boost::signals2::mutex>::slot_invoker::m_invoke(const boost::shared_ptr >, boost::signals2::slot0 >, boost::signals2::mutex> > &, const boost::signals2::detail::void_type *) const (this=0x7fffffffc0d0, connectionBody=...) at /usr/include/boost/signals2/detail/signal_template.hpp:351
#7  0x00007ffff783519b in boost::signals2::detail::signal0_impl, int, std::less, boost::function, boost::function, boost::signals2::mutex>::slot_invoker::operator()(const boost::shared_ptr >, boost::signals2::slot0 >, boost::signals2::mutex> > &) const (this=0x7fffffffc0d0, 
    connectionBody=...) at /usr/include/boost/signals2/detail/signal_template.hpp:340
#8  0x00007ffff783437b in boost::signals2::detail::slot_call_iterator_t, int, std::less, boost::function, boost::function, boost::signals2::mutex>::slot_invoker, std::_List_iterator >, boost::signals2::slot0 >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body >, boost::signals2::slot0 >, boost::signals2::mutex> >::dereference(void) const (this=0x7fffffffbed0)
    at /usr/include/boost/signals2/detail/slot_call_iterator.hpp:82
#9  0x00007ffff78338c6 in boost::iterator_core_access::dereference, int, std::less, boost::function, boost::function, boost::signals2::mutex>::slot_invoker, std::_List_iterator >, boost::signals2::slot0 >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body >, boost::signals2::slot0 >, boost::signals2::mutex> > >(const boost::signals2::detail::slot_call_iterator_t, int, std::less, boost::function, boost::function, boost::signals2::mutex>::slot_invoker, std::_List_iterator >, boost::signals2::slot0 >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body
---Type  to continue, or q  to quit---
 >, boost::signals2::slot0 >, boost::signals2::mutex> > &) (f=...) at /usr/include/boost/iterator/iterator_facade.hpp:516
#10 0x00007ffff78329b0 in boost::iterator_facade, int, std::less, boost::function, boost::function, boost::signals2::mutex>::slot_invoker, std::_List_iterator >, boost::signals2::slot0 >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body >, boost::signals2::slot0 >, boost::signals2::mutex> >, boost::signals2::detail::void_type, boost::single_pass_traversal_tag, const boost::signals2::detail::void_type&, long int>::operator*(void) const (this=0x7fffffffbed0)
    at /usr/include/boost/iterator/iterator_facade.hpp:634
#11 0x00007ffff7831b4e in boost::signals2::optional_last_value::operator(), int, std::less, boost::function, boost::function, boost::signals2::mutex>::slot_invoker, std::_List_iterator >, boost::signals2::slot0 >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body >, boost::signals2::slot0 >, boost::signals2::mutex> > >(boost::signals2::detail::slot_call_iterator_t, int, std::less, boost::function, boost::function, boost::signals2::mutex>::slot_invoker, std::_List_iterator >, boost::signals2::slot0 >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body >, boost::signals2::slot0 >, boost::signals2::mutex> >, boost::signals2::detail::slot_call_iterator_t, int, std::less, boost::function, boost::function, boost::signals2::mutex>::slot_invoker, std::_List_iterator >, boost::signals2::slot0 >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body >, boost::signals2::slot0 >, boost::signals2::mutex> >) const (this=0x19d9320, first=..., last=...)
    at /usr/include/boost/signals2/optional_last_value.hpp:55
#12 0x00007ffff7830f35 in boost::signals2::detail::combiner_invoker::operator(), boost::signals2::detail::slot_call_iterator_t, int, std::less, boost::function, boost::function, boost::signals2::mutex>::slot_invoker, std::_List_iterator >, boost::signals2::slot0 >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body >, boost::signals2::slot0 >, boost::signals2::mutex> > >(boost::signals2::optional_last_value &, boost::signals2::detail::slot_call_iterator_t, int, std::less, boost::function, boost::function, boost::signals2::mutex>::slot_invoker, std::_List_iterator >, boost::signals2::slot0 >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body >, boost::signals2::slot0 >, boost::signals2::mutex> >, boost::signals2::detail::slot_call_iterator_t, int, std::less, boost::function, boost::function, boost::signals2::mutex>::slot_invoker, std::_List_iterator >, boost::signals2::slot0 >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body >, boost::signals2::slot0 >, boost::signals2::mutex> >) const (this=0x7fffffffc00e, combiner=..., first=..., last=...)
    at /usr/include/boost/signals2/detail/result_type_wrapper.hpp:64
#13 0x00007ffff78305c2 in boost::signals2::detail::signal0_impl, int, std::less, boost::function, boost::function, boost::signals2::mutex>::operator()(void) (
---Type  to continue, or q  to quit---
    this=0x19d9230) at /usr/include/boost/signals2/detail/signal_template.hpp:246
#14 0x00007ffff783005a in boost::signals2::signal0, int, std::less, boost::function, boost::function, boost::signals2::mutex>::operator()(void) (this=0x19d90f8)
    at /usr/include/boost/signals2/detail/signal_template.hpp:675
#15 0x00007ffff782f778 in WCondition::notify (this=0x19d90f0)
    at /local_home/l_hlawit/Uni/Leipzig/OpenWalnut/src/core/common/WCondition.cpp:44
#16 0x00007ffff76b1bac in WFlag::set (this=0x19d8e10, value=true, suppressNotification=false)
    at /local_home/l_hlawit/Uni/Leipzig/OpenWalnut/src/core/gui/../common/WFlag.h:313
#17 0x00007ffff78e8b7d in WPropertyVariable::set (this=0x19d8e10, value=true, suppressNotification=false)
    at /local_home/l_hlawit/Uni/Leipzig/OpenWalnut/src/core/common/WPropertyVariable.h:646
#18 0x0000000000542a22 in WPropertyBoolWidget::checkboxChanged (this=0x18f1c50)
    at /local_home/l_hlawit/Uni/Leipzig/OpenWalnut/src/qt4gui/qt4/controlPanel/WPropertyBoolWidget.cpp:72
#19 0x0000000000541e16 in WPropertyBoolWidget::qt_metacall (this=0x18f1c50, _c=QMetaObject::InvokeMetaMethod, _id=0, 
    _a=0x7fffffffc2d0) at /local_home/l_hlawit/Uni/Leipzig/OpenWalnut/build-debug/qt4gui/WPropertyBoolWidget.moc:72
#20 0x00007ffff6ece5f8 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4
#21 0x00007ffff68ee982 in QAbstractButton::toggled(bool) () from /usr/lib/libQtGui.so.4
#22 0x00007ffff66397ce in QAbstractButton::setChecked(bool) () from /usr/lib/libQtGui.so.4
#23 0x00007ffff664c0c6 in QCheckBox::nextCheckState() () from /usr/lib/libQtGui.so.4
#24 0x00007ffff663946a in ?? () from /usr/lib/libQtGui.so.4
#25 0x00007ffff663971c in QAbstractButton::mouseReleaseEvent(QMouseEvent*) () from /usr/lib/libQtGui.so.4
#26 0x00007ffff62c7cc8 in QWidget::event(QEvent*) () from /usr/lib/libQtGui.so.4
#27 0x00007ffff62769f4 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
#28 0x00007ffff627bdc3 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
#29 0x00007ffff6eb949c in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/libQtCore.so.4
#30 0x00007ffff6277a1d in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer&, bool) () from /usr/lib/libQtGui.so.4
#31 0x00007ffff62f9190 in ?? () from /usr/lib/libQtGui.so.4
#32 0x00007ffff62f7ab7 in QApplication::x11ProcessEvent(_XEvent*) () from /usr/lib/libQtGui.so.4
#33 0x00007ffff6320842 in ?? () from /usr/lib/libQtGui.so.4
#34 0x00007ffff09b085d in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#35 0x00007ffff09b1038 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#36 0x00007ffff09b12c9 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#37 0x00007ffff6ee43ef in QEventDispatcherGlib::processEvents(QFlags) () from /usr/lib/libQtCore.so.4
#38 0x00007ffff63204de in ?? () from /usr/lib/libQtGui.so.4
#39 0x00007ffff6eb8882 in QEventLoop::processEvents(QFlags) () from /usr/lib/libQtCore.so.4
#40 0x00007ffff6eb8abc in QEventLoop::exec(QFlags) () from /usr/lib/libQtCore.so.4
#41 0x00007ffff6ebcecb in QCoreApplication::exec() () from /usr/lib/libQtCore.so.4
#42 0x00000000004d3d06 in WQt4Gui::run (this=0x8205c0) at /local_home/l_hlawit/Uni/Leipzig/OpenWalnut/src/qt4gui/qt4/WQt4Gui.cpp:200
#43 0x000000000057378a in main (argc=1, argv=0x7fffffffe718)
    at /local_home/l_hlawit/Uni/Leipzig/OpenWalnut/src/qt4gui/OpenWalnut.cpp:157

(from redmine: created on 2011-09-22, closed on 2012-07-13)

Assignee
Assign to
OpenWalnut 1.3
Milestone
OpenWalnut 1.3
Assign milestone
Time tracking