Summary: | Crashes on exit [~MainWindow → MainWindow::slotBehaviorConfigChanged] | ||
---|---|---|---|
Product: | [Applications] choqok | Reporter: | john4deidre2013 |
Component: | general | Assignee: | Andrea Scarpino <scarpino> |
Status: | RESOLVED FIXED | ||
Severity: | crash | CC: | dschridde+kde, fbriere, me, opensource, thothonegan |
Priority: | NOR | Keywords: | drkonqi |
Version: | 1.7.0 | ||
Target Milestone: | --- | ||
Platform: | openSUSE | ||
OS: | Linux | ||
See Also: | https://bugs.kde.org/show_bug.cgi?id=400117 | ||
Latest Commit: | https://invent.kde.org/network/choqok/commit/2e6ac3ec1f764d3bb58a0640a2fee060c58fad2c | Version Fixed In: | |
Attachments: |
New crash information added by DrKonqi
New crash information added by DrKonqi |
Description
john4deidre2013
2020-02-29 08:41:25 UTC
Created attachment 126516 [details]
New crash information added by DrKonqi
choqok (1.7.0) using Qt 5.14.1
- What I was doing when the application crashed:
I pressed Ctrl+Q to close Choqok, when it crashed.
-- Backtrace (Reduced):
#6 0x00007fe373372a04 in QStackedWidget::indexOf (this=0x561b2a60a010, widget=0x561b2cfe7220) at widgets/qstackedwidget.h:86
#7 0x00007fe373c3b471 in Choqok::UI::ChoqokTabBar::removePage(QWidget*) () from /usr/lib64/libchoqok.so.1
#8 0x00007fe37271b585 in QtPrivate::QSlotObjectBase::call (a=0x7ffc33907bc0, r=0x561b2a6b3d30, this=0x561b2d99a990) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:394
#9 doActivate<false> (sender=0x561b2cfe7220, signal_index=0, argv=0x7ffc33907bc0) at kernel/qobject.cpp:3870
[...]
#11 0x00007fe372715dff in QObject::destroyed (this=this@entry=0x561b2cfe7220, _t1=<optimized out>, _t1@entry=0x561b2cfe7220) at .moc/moc_qobject.cpp:219
Created attachment 126618 [details]
New crash information added by DrKonqi
choqok (1.6.0) using Qt 5.12.4
- What I was doing when the application crashed:
first time I install this software
I setup Twitter client.
read for a few minutes, did not interact much with the application.
quit using shortcut CTRL-q
crashed
-- Backtrace (Reduced):
#6 0x00007f5572fa8813 in QStackedLayout::widget(int) const () at /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#7 0x0000556028db8436 in ()
[...]
#9 0x00007f5572808e0e in KCoreConfigSkeleton::save() () at /usr/lib/x86_64-linux-gnu/libKF5ConfigCore.so.5
#10 0x00007f55739bfb31 in Choqok::UI::ChoqokTabBar::~ChoqokTabBar() () at /usr/lib/x86_64-linux-gnu/libchoqok.so.1
#11 0x00007f55739bfcc9 in Choqok::UI::ChoqokTabBar::~ChoqokTabBar() () at /usr/lib/x86_64-linux-gnu/libchoqok.so.1
A possibly relevant merge request was started @ https://invent.kde.org/network/choqok/-/merge_requests/13 Git commit 2e6ac3ec1f764d3bb58a0640a2fee060c58fad2c by Frédéric Brière. Committed on 21/06/2022 at 07:06. Pushed by scarpino into branch 'master'. Disconnect configChanged() signal from *Settings in QWidget-based dtors Because the QWidget dtor will delete its children first, it is the responsability of any subclass to disconnect any signal that might be emitted as a result of a child's destruction. Otherwise, that signal could end up attempting to invoke a method on the now-destroyed parent. The ChoqokTabBar, QuickPost and TextEdit dtors put various settings in AppearanceSettings or BehaviorSettings, which may end up triggering a configChanged() signal. Therefore, all QWidget subclasses that have connected this signal should disconnect it in their dtor. (Technically, this is only required of *parents* of the above classes, so it could be omitted from TextEdit. Still, better safe than sorry.) M +5 -0 choqok/mainwindow.cpp M +3 -0 libchoqok/ui/choqoktextedit.cpp https://invent.kde.org/network/choqok/commit/2e6ac3ec1f764d3bb58a0640a2fee060c58fad2c *** Bug 458110 has been marked as a duplicate of this bug. *** |