Reset session crash if there is no tab in the pqTabbedMultiViewWidget
Tested on :
- ParaView master
- ParaView 5.8.0
- ParaView 5.9.0
- ParaView 5.9.1
If you reset the session before a tab is created in the pqTabbedMultiViewWidget, ParaView crashes :
Trace :
Thread 1 "paraview" received signal SIGSEGV, Segmentation fault.
0x00007ffff7657f96 in QTabBar::insertTab(int, QIcon const&, QString const&) () from /usr/lib/libQt5Widgets.so.5
(gdb) bt
#0 0x00007ffff7657f96 in QTabBar::insertTab(int, QIcon const&, QString const&) () from /usr/lib/libQt5Widgets.so.5
#1 0x00007ffff7671f5f in QTabWidget::insertTab(int, QWidget*, QIcon const&, QString const&) () from /usr/lib/libQt5Widgets.so.5
#2 0x00007ffff7672019 in QTabWidget::insertTab(int, QWidget*, QString const&) () from /usr/lib/libQt5Widgets.so.5
#3 0x00007ffff71192e7 in pqTabbedMultiViewWidget::pqTabWidget::addAsTab (this=0x5555558fe1a0, wdg=0x555557f11960, self=0x5555558fe120) at /home/glow/work/paraview/pv1/src/Qt/Components/pqTabbedMultiViewWidget.cxx:123
#4 0x00007ffff711c38b in pqTabbedMultiViewWidget::pqInternals::addTab (this=0x5555558f5e90, vlayout=0x555557f0d460, self=0x5555558fe120) at /home/glow/work/paraview/pv1/src/Qt/Components/pqTabbedMultiViewWidget.cxx:268
#5 0x00007ffff711ac75 in pqTabbedMultiViewWidget::createTab (this=0x5555558fe120, vlayout=0x555557f0d460) at /home/glow/work/paraview/pv1/src/Qt/Components/pqTabbedMultiViewWidget.cxx:669
#6 0x00007ffff711a656 in pqTabbedMultiViewWidget::proxyAdded (this=0x5555558fe120, proxy=0x555557f102f0) at /home/glow/work/paraview/pv1/src/Qt/Components/pqTabbedMultiViewWidget.cxx:569
#7 0x00007ffff6f4a90a in pqTabbedMultiViewWidget::qt_static_metacall (_o=0x5555558fe120, _c=QMetaObject::InvokeMetaMethod, _id=15, _a=0x7fffffffc810) at Qt/Components/pqComponents_autogen/EWIEGA46WW/moc_pqTabbedMultiViewWidget.cpp:176
#8 0x00007ffff618fbb0 in ?? () from /usr/lib/libQt5Core.so.5
#9 0x00007ffff6c689b4 in pqServerManagerModel::proxyAdded (this=0x5555558ec200, _t1=0x555557f102f0) at Qt/Core/pqCore_autogen/EWIEGA46WW/moc_pqServerManagerModel.cpp:713
#10 0x00007ffff6d29648 in pqServerManagerModel::onProxyRegistered (this=0x5555558ec200, group=..., name=..., proxy=0x555557f0d460) at /home/glow/work/paraview/pv1/src/Qt/Core/pqServerManagerModel.cxx:368
#11 0x00007ffff6c670cb in pqServerManagerModel::qt_static_metacall (_o=0x5555558ec200, _c=QMetaObject::InvokeMetaMethod, _id=40, _a=0x7fffffffcce0) at Qt/Core/pqCore_autogen/EWIEGA46WW/moc_pqServerManagerModel.cpp:294
#12 0x00007ffff618fbb0 in ?? () from /usr/lib/libQt5Core.so.5
#13 0x00007ffff6c6a25c in pqServerManagerObserver::proxyRegistered (this=0x5555558ec710, _t1=..., _t2=..., _t3=0x555557f0d460) at Qt/Core/pqCore_autogen/EWIEGA46WW/moc_pqServerManagerObserver.cpp:270
#14 0x00007ffff6d2e147 in pqServerManagerObserver::proxyRegistered (this=0x5555558ec710, callData=0x7fffffffd1d0) at /home/glow/work/paraview/pv1/src/Qt/Core/pqServerManagerObserver.cxx:152
#15 0x00007ffff6c69a78 in pqServerManagerObserver::qt_static_metacall (_o=0x5555558ec710, _c=QMetaObject::InvokeMetaMethod, _id=8, _a=0x7fffffffcf60) at Qt/Core/pqCore_autogen/EWIEGA46WW/moc_pqServerManagerObserver.cpp:143
#16 0x00007ffff618fbb0 in ?? () from /usr/lib/libQt5Core.so.5
#17 0x00007ffff5d6a804 in vtkQtConnection::EmitExecute (this=0x5555572ad420, _t1=0x555555e6d800, _t2=75, _t3=0x0, _t4=0x7fffffffd1d0, _t5=0x555557ec7900) at VTK/GUISupport/Qt/GUISupportQt_autogen/EWIEGA46WW/moc_vtkQtConnection.cpp:145
#18 0x00007ffff5d9b317 in vtkQtConnection::Execute (this=0x5555572ad420, caller=0x555555e6d800, e=75, call_data=0x7fffffffd1d0) at /home/glow/work/paraview/pv1/src/VTK/GUISupport/Qt/vtkQtConnection.cxx:70
#19 0x00007ffff5d9b2a4 in vtkQtConnection::DoCallback (vtk_obj=0x555555e6d800, event=75, client_data=0x5555572ad420, call_data=0x7fffffffd1d0) at /home/glow/work/paraview/pv1/src/VTK/GUISupport/Qt/vtkQtConnection.cxx:62
#20 0x00007ffff186799b in vtkCallbackCommand::Execute (this=0x555557ec7900, caller=0x555555e6d800, event=75, callData=0x7fffffffd1d0) at /home/glow/work/paraview/pv1/src/VTK/Common/Core/vtkCallbackCommand.cxx:41
#21 0x00007ffff1b06484 in vtkSubjectHelper::InvokeEvent (this=0x555555e6ddf0, event=75, callData=0x7fffffffd1d0, self=0x555555e6d800) at /home/glow/work/paraview/pv1/src/VTK/Common/Core/vtkObject.cxx:626
#22 0x00007ffff1b069af in vtkObject::InvokeEvent (this=0x555555e6d800, event=75, callData=0x7fffffffd1d0) at /home/glow/work/paraview/pv1/src/VTK/Common/Core/vtkObject.cxx:795
#23 0x00007ffff5b5ff48 in vtkSMSessionProxyManager::RegisterProxy (this=0x555555e6d800, groupname=0x7fffef2abe01 "layouts", name=0x7fffffffd370 "Layout #1", proxy=0x555557f0d460) at /home/glow/work/paraview/pv1/src/Remoting/ServerManager/vtkSMSessionProxyManager.cxx:910
#24 0x00007fffef1e2b68 in vtkSMParaViewPipelineControllerWithRendering::RegisterLayoutProxy (this=0x555558823230, proxy=0x555557f0d460, proxyname=0x0) at /home/glow/work/paraview/pv1/src/Remoting/Views/vtkSMParaViewPipelineControllerWithRendering.cxx:822
#25 0x00007fffef1e2fb0 in vtkSMParaViewPipelineControllerWithRendering::AssignViewToLayout (this=0x555558823230, view=0x555557736b10, layout=0x555557f0d460, hint=0) at /home/glow/work/paraview/pv1/src/Remoting/Views/vtkSMParaViewPipelineControllerWithRendering.cxx:882
#26 0x00007ffff6cd1720 in pqObjectBuilder::addToLayout (this=0x5555558ecb60, view=0x5555593637b0, layout=0x0) at /home/glow/work/paraview/pv1/src/Qt/Core/pqObjectBuilder.cxx:403
#27 0x00007ffff7b33391 in pqDefaultViewBehavior::onServerCreation (this=0x555555daa900, server=0x555557f5cce0) at /home/glow/work/paraview/pv1/src/Qt/ApplicationComponents/pqDefaultViewBehavior.cxx:171
#28 0x00007ffff7a976d5 in pqDefaultViewBehavior::qt_static_metacall (_o=0x555555daa900, _c=QMetaObject::InvokeMetaMethod, _id=0, _a=0x7fffffffd660) at Qt/ApplicationComponents/pqApplicationComponents_autogen/EWIEGA46WW/moc_pqDefaultViewBehavior.cpp:84
#29 0x00007ffff618fbb0 in ?? () from /usr/lib/libQt5Core.so.5
#30 0x00007ffff6c684ec in pqServerManagerModel::serverAdded (this=0x5555558ec200, _t1=0x555557f5cce0) at Qt/Core/pqCore_autogen/EWIEGA46WW/moc_pqServerManagerModel.cpp:637
#31 0x00007ffff6d29f32 in pqServerManagerModel::onConnectionCreated (this=0x5555558ec200, id=3) at /home/glow/work/paraview/pv1/src/Qt/Core/pqServerManagerModel.cxx:528
#32 0x00007ffff6c67139 in pqServerManagerModel::qt_static_metacall (_o=0x5555558ec200, _c=QMetaObject::InvokeMetaMethod, _id=42, _a=0x7fffffffda90) at Qt/Core/pqCore_autogen/EWIEGA46WW/moc_pqServerManagerModel.cpp:296
#33 0x00007ffff618fbb0 in ?? () from /usr/lib/libQt5Core.so.5
#34 0x00007ffff6c6a380 in pqServerManagerObserver::connectionCreated (this=0x5555558ec710, _t1=3) at Qt/Core/pqCore_autogen/EWIEGA46WW/moc_pqServerManagerObserver.cpp:284
#35 0x00007ffff6d2df6d in pqServerManagerObserver::connectionCreated (this=0x5555558ec710, callData=0x555555789dc0) at /home/glow/work/paraview/pv1/src/Qt/Core/pqServerManagerObserver.cxx:110
#36 0x00007ffff6c69b21 in pqServerManagerObserver::qt_static_metacall (_o=0x5555558ec710, _c=QMetaObject::InvokeMetaMethod, _id=10, _a=0x7fffffffdd00) at Qt/Core/pqCore_autogen/EWIEGA46WW/moc_pqServerManagerObserver.cpp:145
#37 0x00007ffff618fbb0 in ?? () from /usr/lib/libQt5Core.so.5
#38 0x00007ffff5d6a804 in vtkQtConnection::EmitExecute (this=0x5555558eb7a0, _t1=0x555555789d80, _t2=70, _t3=0x0, _t4=0x555555789dc0, _t5=0x5555558eaa10) at VTK/GUISupport/Qt/GUISupportQt_autogen/EWIEGA46WW/moc_vtkQtConnection.cpp:145
#39 0x00007ffff5d9b317 in vtkQtConnection::Execute (this=0x5555558eb7a0, caller=0x555555789d80, e=70, call_data=0x555555789dc0) at /home/glow/work/paraview/pv1/src/VTK/GUISupport/Qt/vtkQtConnection.cxx:70
#40 0x00007ffff5d9b2a4 in vtkQtConnection::DoCallback (vtk_obj=0x555555789d80, event=70, client_data=0x5555558eb7a0, call_data=0x555555789dc0) at /home/glow/work/paraview/pv1/src/VTK/GUISupport/Qt/vtkQtConnection.cxx:62
#41 0x00007ffff186799b in vtkCallbackCommand::Execute (this=0x5555558eaa10, caller=0x555555789d80, event=70, callData=0x555555789dc0) at /home/glow/work/paraview/pv1/src/VTK/Common/Core/vtkCallbackCommand.cxx:41
#42 0x00007ffff1b06484 in vtkSubjectHelper::InvokeEvent (this=0x5555558ebe20, event=70, callData=0x555555789dc0, self=0x555555789d80) at /home/glow/work/paraview/pv1/src/VTK/Common/Core/vtkObject.cxx:626
#43 0x00007ffff1b069af in vtkObject::InvokeEvent (this=0x555555789d80, event=70, callData=0x555555789dc0) at /home/glow/work/paraview/pv1/src/VTK/Common/Core/vtkObject.cxx:795
#44 0x00007ffff455ff5b in vtkProcessModule::RegisterSession (this=0x555555789d80, session=0x555555da3e00) at /home/glow/work/paraview/pv1/src/Remoting/Core/vtkProcessModule.cxx:384
#45 0x00007ffff6cd3309 in pqObjectBuilder::resetServer (this=0x5555558ecb60, server=0x0) at /home/glow/work/paraview/pv1/src/Qt/Core/pqObjectBuilder.cxx:780
#46 0x00007ffff7b34542 in pqDeleteReaction::deleteAll () at /home/glow/work/paraview/pv1/src/Qt/ApplicationComponents/pqDeleteReaction.cxx:167
#47 0x00007ffff7b350b9 in pqDeleteReaction::onTriggered (this=0x555555c0aac0) at /home/glow/work/paraview/pv1/src/Qt/ApplicationComponents/pqDeleteReaction.cxx:341
#48 0x00007ffff7a9f139 in pqReaction::qt_static_metacall (_o=0x555555c0aac0, _c=QMetaObject::InvokeMetaMethod, _id=0, _a=0x7fffffffe1b0) at Qt/ApplicationComponents/pqApplicationComponents_autogen/EWIEGA46WW/moc_pqReaction.cpp:79
#49 0x00007ffff618fbb0 in ?? () from /usr/lib/libQt5Core.so.5
#50 0x00007ffff7495f73 in QAction::triggered(bool) () from /usr/lib/libQt5Widgets.so.5
#51 0x00007ffff7498855 in QAction::activate(QAction::ActionEvent) () from /usr/lib/libQt5Widgets.so.5
#52 0x00007ffff7499498 in QAction::event(QEvent*) () from /usr/lib/libQt5Widgets.so.5
#53 0x00007ffff749c762 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#54 0x00007ffff615881a in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib/libQt5Core.so.5
#55 0x00007ffff6563dbd in QShortcutMap::dispatchEvent(QKeyEvent*) () from /usr/lib/libQt5Gui.so.5
#56 0x00007ffff65647c3 in QShortcutMap::tryShortcut(QKeyEvent*) () from /usr/lib/libQt5Gui.so.5
#57 0x00007ffff650c2b4 in QWindowSystemInterface::handleShortcutEvent(QWindow*, unsigned long, int, QFlags<Qt::KeyboardModifier>, unsigned int, unsigned int, unsigned int, QString const&, bool, unsigned short) () from /usr/lib/libQt5Gui.so.5
#58 0x00007ffff652f39c in QGuiApplicationPrivate::processKeyEvent(QWindowSystemInterfacePrivate::KeyEvent*) () from /usr/lib/libQt5Gui.so.5
#59 0x00007ffff6508bb5 in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Gui.so.5
#60 0x00007fffe533219c in ?? () from /usr/lib/libQt5XcbQpa.so.5
#61 0x00007fffed4a602c in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#62 0x00007fffed4f9b59 in ?? () from /usr/lib/libglib-2.0.so.0
#63 0x00007fffed4a3781 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#64 0x00007ffff61b1321 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#65 0x00007ffff615717c in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#66 0x00007ffff615f634 in QCoreApplication::exec() () from /usr/lib/libQt5Core.so.5
#67 0x0000555555562470 in main (argc=1, argv=0x5555556da590) at Clients/ParaView/paraview_main.cxx:152
Steps to reproduce :
- Open ParaView
- Remove the Layout #1 and QUICKLY reset the session (use the CTRL+R shortcut). The background must be white as there is no layout (see image below)
Edited by Mathieu Westphal (Kitware)