https://bugs.kde.org/show_bug.cgi?id=515166
Bug ID: 515166
Summary: Crash when creating a vector layer, after switching to
a session
Classification: Applications
Product: krita
Version First git master (please specify the git hash!)
Reported In:
Platform: Compiled Sources
OS: Linux
Status: REPORTED
Severity: normal
Priority: NOR
Component: General
Assignee: [email protected]
Reporter: [email protected]
Target Milestone: ---
SUMMARY
Krita segfaults when creating a new vector layer, after switching to a session.
STEPS TO REPRODUCE
1. Open a document
2. Switch to a previously saved session
3. Create a new vector layer
OBSERVED RESULT
This causes a segfault in the `DefaultTool::updateDistinctiveActions` call.
Specifically what's happening here is the action group for the action
`text_type_preformatted` is set to null after the session switch. Tho it only
happens every other session switch.
BACKTRACE
#0 0x00007ffff5a59a3d in QActionGroup::setEnabled(bool) ()
from /home/appimage/appimage-workspace/deps/usr/lib/libQt6Gui.so.6
#1 0x00007fffa8bba870 in DefaultTool::updateDistinctiveActions
(this=0x55555f67b0e0,
editableShapes=...)
at
/home/appimage/persistent/krita/plugins/tools/defaulttool/defaulttool/DefaultTool.cpp:2219
#2 0x00007fffa8bba1b2 in DefaultTool::updateActions (this=0x55555f67b0e0)
at
/home/appimage/persistent/krita/plugins/tools/defaulttool/defaulttool/DefaultTool.cpp:2165
#3 0x00007ffff501b55c in void doActivate<false>(QObject*, int, void**) ()
from /home/appimage/appimage-workspace/deps/usr/lib/libQt6Core.so.6
#4 0x00007ffff7530a9f in KisCanvas2::KisCanvas2Private::setActiveShapeManager
(
shapeManager=<optimized out>, this=<optimized out>)
at /home/appimage/persistent/krita/libs/ui/canvas/kis_canvas2.cpp:584
#5 KisCanvas2::KisCanvas2Private::setActiveShapeManager
(shapeManager=<optimized out>,
this=<optimized out>) at
/home/appimage/persistent/krita/libs/ui/canvas/kis_canvas2.cpp:580
#6 KisCanvas2::localShapeManager (this=<optimized out>)
at /home/appimage/persistent/krita/libs/ui/canvas/kis_canvas2.cpp:665
#7 0x00007ffff7530ccd in KisCanvas2::shapeManager (this=0x555558d9a228)
at /home/appimage/persistent/krita/libs/ui/canvas/kis_canvas2.cpp:590
#8 0x00007ffff3e594ac in KoToolManager::Private::postSwitchTool
(this=0x55555823d980)
at /home/appimage/persistent/krita/libs/flake/KoToolManager.cpp:556
#9 0x00007ffff7724e27 in KisNodeManager::slotUiActivatedNode
(this=0x555563f5af40, node=...)
at /home/appimage/persistent/krita/libs/ui/kis_node_manager.cpp:863
#10 0x00007ffff773ba66 in KisNodeSelectionAdapter::setActiveNode
(this=<optimized out>, node=...)
at
/home/appimage/persistent/krita/libs/ui/kis_node_selection_adapter.cpp:34
#11 0x00007ffff774258c in KisNodeModel::setData (this=0x55555d757490,
index=..., value=..., role=257)
at /home/appimage/persistent/krita/libs/ui/kis_node_model.cpp:714
#12 0x00007ffff5263809 in QSortFilterProxyModel::setData(QModelIndex const&,
QVariant const&, int) ()
from /home/appimage/appimage-workspace/deps/usr/lib/libQt6Core.so.6
#13 0x00007fffa2fde358 in LayerBox::setCurrentNode (this=0x555561e76da0,
node=...)
at
/home/appimage/persistent/krita/plugins/dockers/layerdocker/LayerBox.cpp:759
#14 0x00007fffa2fe2590 in LayerBox::qt_static_metacall (_o=0x555561e76da0,
_c=<optimized out>,
_id=<optimized out>, _a=<optimized out>)
at
/home/appimage/appimage-workspace/krita-build/plugins/dockers/layerdocker/kritalayerdocker_static_autogen/include/moc_LayerBox.cpp:352
#15 0x00007ffff501b55c in void doActivate<false>(QObject*, int, void**) ()
from /home/appimage/appimage-workspace/deps/usr/lib/libQt6Core.so.6
#16 0x00007ffff74bd109 in KisNodeManager::sigUiNeedChangeActiveNode
(this=this@entry=0x555563f5af40,
_t1=...)
at
/home/appimage/appimage-workspace/krita-build/libs/ui/kritaui_autogen/EWIEGA46WW/moc_kis_node_manager.cpp:807
#17 0x00007ffff772271e in KisNodeManager::slotSomethingActivatedNodeImpl
(this=0x555563f5af40,
node=...) at
/home/appimage/persistent/krita/libs/ui/kis_node_manager.cpp:803
#18 0x00007ffff77229c0 in KisNodeManager::slotNonUiActivatedNode
(this=0x555563f5af40, node=...)
at /home/appimage/persistent/krita/libs/ui/kis_node_manager.cpp:825
#19 0x00007ffff74d7caa in KisNodeManager::qt_static_metacall (_o=<optimized
out>, _c=<optimized out>,
_id=<optimized out>, _a=0x7fffffffd460)
at
/home/appimage/appimage-workspace/krita-build/libs/ui/kritaui_autogen/EWIEGA46WW/moc_kis_node_manager.cpp:550
#20 0x00007ffff501b55c in void doActivate<false>(QObject*, int, void**) ()
from /home/appimage/appimage-workspace/deps/usr/lib/libQt6Core.so.6
#21 0x00007ffff74bbf69 in KisDummiesFacadeBase::sigActivateNode
(this=this@entry=0x555558b705c0,
_t1=...)
at
/home/appimage/appimage-workspace/krita-build/libs/ui/kritaui_autogen/QUY67KCZCL/moc_kis_dummies_facade_base.cpp:311
#22 0x00007ffff7659090 in KisDummiesFacadeBase::slotNodeActivationRequested
(this=0x555558b705c0,
node=..., flags=...)
at
/home/appimage/persistent/krita/libs/ui/flake/kis_dummies_facade_base.cpp:162
#23 0x00007ffff765d2d6 in boost::_mfi::mf2<void, KisDummiesFacadeBase,
KisSharedPtr<KisNode>, QFlags<KisNodeAdditionFlag> >::operator()
(this=<optimized out>, a1=..., a2=..., p=<optimized out>)
at
/home/appimage/appimage-workspace/deps/usr/include/boost/bind/mem_fn_template.hpp:280
#24 boost::_bi::list3<boost::_bi::value<KisDummiesFacadeBase*>, boost::arg<1>,
boost::arg<2> >::operator()<boost::_mfi::mf2<void, KisDummiesFacadeBase,
KisSharedPtr<KisNode>, QFlags<KisNodeAdditionFlag> >,
boost::_bi::rrlist2<KisSharedPtr<KisNode>, QFlags<KisNodeAdditionFlag> > >
(a=<synthetic pointer>...,
f=..., this=<optimized out>)
at
/home/appimage/appimage-workspace/deps/usr/include/boost/bind/bind.hpp:377
--Type <RET> for more, q to quit, c to continue without paging--
#25 boost::_bi::bind_t<void, boost::_mfi::mf2<void, KisDummiesFacadeBase,
KisSharedPtr<KisNode>, QFlags<KisNodeAdditionFlag> >,
boost::_bi::list3<boost::_bi::value<KisDummiesFacadeBase*>, boost::arg<1>,
boost::arg<2> > >::operator()<KisSharedPtr<KisNode>,
QFlags<KisNodeAdditionFlag> > (a2=..., a1=..., this=<optimized out>) at
/home/appimage/appimage-workspace/deps/usr/include/boost/bind/bind.hpp:1297
#26 std::__invoke_impl<void, boost::_bi::bind_t<void, boost::_mfi::mf2<void,
KisDummiesFacadeBase, KisSharedPtr<KisNode>, QFlags<KisNodeAdditionFlag> >,
boost::_bi::list3<boost::_bi::value<KisDummiesFacadeBase*>, boost::arg<1>,
boost::arg<2> > >&, KisSharedPtr<KisNode>, QFlags<KisNodeAdditionFlag> >
(__f=...) at /usr/include/c++/13/bits/invoke.h:61
#27 std::__invoke_r<void, boost::_bi::bind_t<void, boost::_mfi::mf2<void,
KisDummiesFacadeBase, KisSharedPtr<KisNode>, QFlags<KisNodeAdditionFlag> >,
boost::_bi::list3<boost::_bi::value<KisDummiesFacadeBase*>, boost::arg<1>,
boost::arg<2> > >&, KisSharedPtr<KisNode>, QFlags<KisNodeAdditionFlag> >
(__fn=...) at /usr/include/c++/13/bits/invoke.h:111
#28 std::_Function_handler<void (KisSharedPtr<KisNode>,
QFlags<KisNodeAdditionFlag>), boost::_bi::bind_t<void, boost::_mfi::mf2<void,
KisDummiesFacadeBase, KisSharedPtr<KisNode>, QFlags<KisNodeAdditionFlag> >,
boost::_bi::list3<boost::_bi::value<KisDummiesFacadeBase*>, boost::arg<1>,
boost::arg<2> > > >::_M_invoke(std::_Any_data const&, KisSharedPtr<KisNode>&&,
QFlags<KisNodeAdditionFlag>&&) (__functor=..., __args#0=...,
__args#1=...) at /usr/include/c++/13/bits/std_function.h:290
#29 0x00007ffff765dd72 in std::function<void (KisSharedPtr<KisNode>,
QFlags<KisNodeAdditionFlag>)>::operator()(KisSharedPtr<KisNode>,
QFlags<KisNodeAdditionFlag>) const (__args#1=..., __args#0=...,
this=0x55555932e5d8) at /usr/include/c++/13/bits/std_function.h:591
#30 std::__invoke_impl<void, std::function<void (KisSharedPtr<KisNode>,
QFlags<KisNodeAdditionFlag>)>&, KisSharedPtr<KisNode>&,
QFlags<KisNodeAdditionFlag>&>(std::__invoke_other, std::function<void
(KisSharedPtr<KisNode>, QFlags<KisNodeAdditionFlag>)>&, KisSharedPtr<KisNode>&,
QFlags<KisNodeAdditionFlag>&) (__f=...) at /usr/include/c++/13/bits/invoke.h:61
#31 std::__invoke<std::function<void (KisSharedPtr<KisNode>,
QFlags<KisNodeAdditionFlag>)>&, KisSharedPtr<KisNode>&,
QFlags<KisNodeAdditionFlag>&>(std::function<void (KisSharedPtr<KisNode>,
QFlags<KisNodeAdditionFlag>)>&, KisSharedPtr<KisNode>&,
QFlags<KisNodeAdditionFlag>&) (__fn=...) at
/usr/include/c++/13/bits/invoke.h:96
#32 std::__apply_impl<std::function<void (KisSharedPtr<KisNode>,
QFlags<KisNodeAdditionFlag>)>&, std::tuple<KisSharedPtr<KisNode>,
QFlags<KisNodeAdditionFlag> >&, 0ul, 1ul>(std::function<void
(KisSharedPtr<KisNode>, QFlags<KisNodeAdditionFlag>)>&,
std::tuple<KisSharedPtr<KisNode>, QFlags<KisNodeAdditionFlag> >&,
std::integer_sequence<unsigned long, 0ul, 1ul>) (__t=..., __f=...) at
/usr/include/c++/13/tuple:2288
#33 std::apply<std::function<void (KisSharedPtr<KisNode>,
QFlags<KisNodeAdditionFlag>)>&, std::tuple<KisSharedPtr<KisNode>,
QFlags<KisNodeAdditionFlag> >&>(std::function<void (KisSharedPtr<KisNode>,
QFlags<KisNodeAdditionFlag>)>&, std::tuple<KisSharedPtr<KisNode>,
QFlags<KisNodeAdditionFlag> >&) (__t=..., __f=...) at
/usr/include/c++/13/tuple:2299
#34 KisSynchronizedConnection<KisSharedPtr<KisNode>,
QFlags<KisNodeAdditionFlag> >::deliverEventToReceiver (this=0x55555932e5c8) at
/home/appimage/persistent/krita/libs/global/KisSynchronizedConnection.h:234
#35 0x00007ffff65d099a in KisSynchronizedConnectionBase::event
(event=0x555564c84260, this=0x55555932e5c8) at
/home/appimage/persistent/krita/libs/global/KisSynchronizedConnection.cpp:101
#36 KisSynchronizedConnectionBase::event (this=0x55555932e5c8,
event=0x555564c84260) at
/home/appimage/persistent/krita/libs/global/KisSynchronizedConnection.cpp:94
#37 0x00007ffff5f226b5 in QApplicationPrivate::notify_helper(QObject*, QEvent*)
() from /home/appimage/appimage-workspace/deps/usr/lib/libQt6Widgets.so.6
#38 0x00007ffff7b26e65 in KisApplication::notify (this=0x7fffffffdf80,
receiver=0x55555932e5c8, event=0x555564c84260) at
/home/appimage/persistent/krita/libs/ui/KisApplication.cpp:912
#39 0x00007ffff4fbb258 in QCoreApplication::notifyInternal2(QObject*, QEvent*)
() from /home/appimage/appimage-workspace/deps/usr/lib/libQt6Core.so.6
#40 0x00007ffff4fbef43 in QCoreApplicationPrivate::sendPostedEvents(QObject*,
int, QThreadData*) () from
/home/appimage/appimage-workspace/deps/usr/lib/libQt6Core.so.6
#41 0x00007ffff5295d27 in postEventSourceDispatch(_GSource*, int (*)(void*),
void*) () from /home/appimage/appimage-workspace/deps/usr/lib/libQt6Core.so.6
#42 0x00007ffff2271d3b in g_main_context_dispatch () from
/lib/x86_64-linux-gnu/libglib-2.0.so.0
#43 0x00007ffff22c72b8 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#44 0x00007ffff226f3e3 in g_main_context_iteration () from
/lib/x86_64-linux-gnu/libglib-2.0.so.0
#45 0x00007ffff5295480 in
QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) ()
from /home/appimage/appimage-workspace/deps/usr/lib/libQt6Core.so.6
#46 0x00007ffff4fc7bb2 in
QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from
/home/appimage/appimage-workspace/deps/usr/lib/libQt6Core.so.6
#47 0x00007ffff4fc3786 in QCoreApplication::exec() () from
/home/appimage/appimage-workspace/deps/usr/lib/libQt6Core.so.6
#48 0x000055555555d1cb in main (argc=<optimized out>, argv=<optimized out>) at
/home/appimage/persistent/krita/krita/main.cc:783
--
You are receiving this mail because:
You are watching all bug changes.