Bug 470757 - Semantik brakes when simply opening and closing the app without generating any other action inside it
Summary: Semantik brakes when simply opening and closing the app without generating an...
Status: RESOLVED MOVED
Alias: None
Product: unknown
Classification: Bugzilla Internals
Component: general (show other bugs)
Version: unspecified
Platform: unspecified Linux
: NOR crash
Target Milestone: ---
Assignee: Unassigned bugs mailing-list
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2023-06-07 18:16 UTC by André Rodrigues Simões
Modified: 2023-06-10 12:10 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description André Rodrigues Simões 2023-06-07 18:16:41 UTC
Application: semantik (1.2.9)

Qt Version: 5.15.9
Frameworks Version: 5.106.0
Operating System: Linux 5.16.5-1-default x86_64
Windowing System: X11
Distribution: openSUSE Tumbleweed
DrKonqi: 5.27.5 [KCrashBackend]

-- Information about the crash:
After using Semantik about an entire day (opening and closing without crashes) i've started to receive a recurring crash event from KDE Crash Handler.

Steps to see the error:
1 - open Semantik;
2 - close Semantik.

It doesn't matter if Semantik is closed by pressing <ALT + F4> or clicking in the close button (or using the exit inside File menu), it will always crash.

The crash can be reproduced every time.

-- Backtrace:
Application: Semantik (semantik), signal: Segmentation fault

[KCrash Handler]
#4  std::__atomic_base<int>::load(std::memory_order) const (__m=std::memory_order_relaxed, this=0x55c80bf21c46) at /usr/include/c++/13/bits/atomic_base.h:503
#5  QAtomicOps<int>::loadRelaxed<int>(std::atomic<int> const&) (_q_value=<error reading variable: Cannot access memory at address 0x55c80bf21c46>) at ../../include/QtCore/../../src/corelib/thread/qatomic_cxx11.h:239
#6  QBasicAtomicInteger<int>::loadRelaxed() const (this=0x55c80bf21c46) at ../../include/QtCore/../../src/corelib/thread/qbasicatomic.h:107
#7  QWeakPointer<QObject>::internalData() const (this=0x55cd57422f40) at ../../include/QtCore/../../src/corelib/tools/qsharedpointer_impl.h:698
#8  QPointer<QObject>::data() const (this=0x55cd57422f40) at ../../include/QtCore/../../src/corelib/kernel/qpointer.h:77
#9  QPointer<QObject>::operator->() const (this=0x55cd57422f40) at ../../include/QtCore/../../src/corelib/kernel/qpointer.h:79
#10 operator==<QObject>(QPointer<QObject> const&, QObject*) (o=<optimized out>, p=...) at ../../include/QtCore/../../src/corelib/kernel/qpointer.h:107
#11 QObject::removeEventFilter(QObject*) (this=<optimized out>, obj=0x55cd56f43da0) at kernel/qobject.cpp:2286
#12 0x00007f6184b54d06 in Sonnet::SpellCheckDecoratorPrivate::~SpellCheckDecoratorPrivate() (this=0x55cd56f923c0, this=<optimized out>) at /usr/src/debug/sonnet-5.106.0/src/ui/spellcheckdecorator.cpp:54
#13 std::default_delete<Sonnet::SpellCheckDecoratorPrivate>::operator()(Sonnet::SpellCheckDecoratorPrivate*) const (this=<optimized out>, __ptr=0x55cd56f923c0) at /usr/include/c++/13/bits/unique_ptr.h:99
#14 std::default_delete<Sonnet::SpellCheckDecoratorPrivate>::operator()(Sonnet::SpellCheckDecoratorPrivate*) const (__ptr=0x55cd56f923c0, this=<optimized out>) at /usr/include/c++/13/bits/unique_ptr.h:93
#15 std::unique_ptr<Sonnet::SpellCheckDecoratorPrivate, std::default_delete<Sonnet::SpellCheckDecoratorPrivate> >::~unique_ptr() (this=0x55cd56f43db0, this=<optimized out>) at /usr/include/c++/13/bits/unique_ptr.h:404
#16 Sonnet::SpellCheckDecorator::~SpellCheckDecorator() (this=0x55cd56f43da0, this=<optimized out>) at /usr/src/debug/sonnet-5.106.0/src/ui/spellcheckdecorator.cpp:234
#17 0x00007f6184b54d39 in Sonnet::SpellCheckDecorator::~SpellCheckDecorator() (this=0x55cd56f43da0, this=<optimized out>) at /usr/src/debug/sonnet-5.106.0/src/ui/spellcheckdecorator.cpp:234
#18 0x00007f618462c7ee in QObjectPrivate::deleteChildren() (this=this@entry=0x55cd56c6afa0) at kernel/qobject.cpp:2137
#19 0x00007f6183e056b6 in QWidget::~QWidget() (this=0x55cd56d70b90, __in_chrg=<optimized out>) at kernel/qwidget.cpp:1524
#20 0x00007f6183f93179 in QTextEdit::~QTextEdit() (this=0x55cd56d70b90, __in_chrg=<optimized out>) at widgets/qtextedit.cpp:667
#21 0x00007f618462c7ee in QObjectPrivate::deleteChildren() (this=this@entry=0x55cd56c77670) at kernel/qobject.cpp:2137
#22 0x00007f6183e056b6 in QWidget::~QWidget() (this=this@entry=0x55cd56c5cba0, __in_chrg=<optimized out>) at kernel/qwidget.cpp:1524
#23 0x000055cd54a2981d in text_view::~text_view() (this=0x55cd56c5cba0, this=<optimized out>) at src/../../src/text_view.h:18
#24 text_view::~text_view() (this=0x55cd56c5cba0, this=<optimized out>) at src/../../src/text_view.h:18
#25 0x00007f618462c7ee in QObjectPrivate::deleteChildren() (this=this@entry=0x55cd56bd9b20) at kernel/qobject.cpp:2137
#26 0x00007f6183e056b6 in QWidget::~QWidget() (this=this@entry=0x55cd56bd9ad0, __in_chrg=<optimized out>) at kernel/qwidget.cpp:1524
#27 0x00007f6183eb45bd in QFrame::~QFrame() (this=this@entry=0x55cd56bd9ad0, __in_chrg=<optimized out>) at widgets/qframe.cpp:264
#28 0x00007f6183f7cacd in QStackedWidget::~QStackedWidget() (this=this@entry=0x55cd56bd9ad0, __in_chrg=<optimized out>) at widgets/qstackedwidget.cpp:147
#29 0x000055cd54a2243d in data_view::~data_view() (this=0x55cd56bd9ad0, this=<optimized out>) at src/../../src/data_view.h:11
#30 data_view::~data_view() (this=0x55cd56bd9ad0, this=<optimized out>) at src/../../src/data_view.h:11
#31 0x00007f618462c7ee in QObjectPrivate::deleteChildren() (this=this@entry=0x55cd56b21960) at kernel/qobject.cpp:2137
#32 0x00007f6183e056b6 in QWidget::~QWidget() (this=0x55cd56a5c2c0, __in_chrg=<optimized out>) at kernel/qwidget.cpp:1524
#33 0x00007f6183ee73f9 in QDockWidget::~QDockWidget() (this=0x55cd56a5c2c0, __in_chrg=<optimized out>) at widgets/qdockwidget.cpp:1314
#34 0x00007f618462c7ee in QObjectPrivate::deleteChildren() (this=this@entry=0x55cd56b6fa10) at kernel/qobject.cpp:2137
#35 0x00007f6183e056b6 in QWidget::~QWidget() (this=0x55cd56b6fbf0, __in_chrg=<optimized out>) at kernel/qwidget.cpp:1524
#36 0x000055cd54a15734 in semantik_win::~semantik_win() (this=0x55cd56b6fbf0, this=<optimized out>) at ../src/semantik.cpp:464
#37 semantik_win::~semantik_win() (this=0x55cd56b6fbf0, this=<optimized out>) at ../src/semantik.cpp:464
#38 0x00007f618462ea17 in QObject::event(QEvent*) (this=0x55cd56b6fbf0, e=0x55cd5760d780) at kernel/qobject.cpp:1334
#39 0x00007f6184e016a9 in KXmlGuiWindow::event(QEvent*) (this=0x55cd56b6fbf0, ev=0x55cd5760d780) at /usr/src/debug/kxmlgui-5.106.0/src/kxmlguiwindow.cpp:220
#40 0x00007f6183dc81ae in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=<optimized out>, receiver=0x55cd56b6fbf0, e=0x55cd5760d780) at kernel/qapplication.cpp:3640
#41 0x00007f6184602978 in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x55cd56b6fbf0, event=0x55cd5760d780) at kernel/qcoreapplication.cpp:1064
#42 0x00007f6184605f71 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) (receiver=0x0, event_type=0, data=0x55cd565f2bb0) at kernel/qcoreapplication.cpp:1821
#43 0x00007f618465c713 in postEventSourceDispatch(GSource*, GSourceFunc, gpointer) (s=0x55cd5673ea30) at kernel/qeventdispatcher_glib.cpp:277
#44 0x00007f61817288d8 in g_main_context_dispatch () at /lib64/libglib-2.0.so.0
#45 0x00007f6181728ce8 in  () at /lib64/libglib-2.0.so.0
#46 0x00007f6181728d7c in g_main_context_iteration () at /lib64/libglib-2.0.so.0
#47 0x00007f618465bf26 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x55cd56743c50, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#48 0x00007f618460140b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7fff2d8b12f0, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:69
#49 0x00007f61846098a0 in QCoreApplication::exec() () at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#50 0x000055cd549fbaf8 in main(int, char**) (i_iArgc=<optimized out>, i_iArgv=<optimized out>) at ../src/main.cpp:115
[Inferior 1 (process 3252) detached]

Reported using DrKonqi
Comment 1 Ben Bonacci 2023-06-10 12:10:26 UTC
It looks like Semantik has its own bug tracker on GitLab, so I suggest forwarding this bug report over there.
https://gitlab.com/ita1024/semantik/-/issues