Bug 433040 - RKWard aborted after installing recommended packages
Summary: RKWard aborted after installing recommended packages
Status: RESOLVED FIXED
Alias: None
Product: rkward
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: Fedora RPMs Linux
: NOR normal
Target Milestone: ---
Assignee: RKWard Team
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2021-02-17 01:43 UTC by Matt Fagnani
Modified: 2022-04-09 22:02 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Matt Fagnani 2021-02-17 01:43:42 UTC
SUMMARY

I was using a Fedora 34 KDE Plasma installation with Plasma 5.21.0 on Wayland. I updated the system with sudo dnf upgrade. The update included R-4.0.4-1.fc34.x86_64 and rkward-0.7.2-2.fc34.x86_64. I rebooted and logged in to Plasma on Wayland. I started RKWard, and its wizard suggested that I install R2Html and rmarkdown. I installed those packages with their ~15 dependencies to /usr/lib64/R/library as root. The installation completed succesfully. I clicked Done in the installation window. RKWard aborted right after that. The functions at the top of the stack seem to indicate some sort of memory management error such as a bad allocation in frames 8-9. Some of those functions were from libstdc++-debuginfo-11.0.0-0.19.fc34 and qt5-qtbase-5.15.2-13.fc34.

Application: RKWard (rkward), signal: Aborted

[KCrash Handler]
#4  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:49
#5  0x00007fbe163768a4 in __GI_abort () at abort.c:79
#6  0x00007fbe16709a86 in __gnu_cxx::__verbose_terminate_handler() () at ../../../../libstdc++-v3/libsupc++/vterminate.cc:95
#7  0x00007fbe1671521c in __cxxabiv1::__terminate(void (*)()) (handler=<optimized out>) at ../../../../libstdc++-v3/libsupc++/eh_terminate.cc:48
#8  0x00007fbe16715287 in std::terminate() () at ../../../../libstdc++-v3/libsupc++/eh_terminate.cc:58
#9  0x00007fbe16715529 in __cxxabiv1::__cxa_throw(void*, std::type_info*, void (*)(void*)) (obj=<optimized out>, tinfo=0x7fbe16877e78 <typeinfo for std::bad_alloc>, dest=0x7fbe167138b0 <std::bad_alloc::~bad_alloc()>) at ../../../../libstdc++-v3/libsupc++/eh_throw.cc:95
#10 0x00007fbe169387b9 in qBadAlloc() () at global/qglobal.cpp:3338
#11 0x00007fbe1693ae38 in QListData::detach_grow(int*, int) (this=<optimized out>, this@entry=0x55c08c1105b8, idx=<optimized out>, idx@entry=0x7ffe99d6557c, num=<optimized out>, num@entry=1) at tools/qlist.cpp:97
#12 0x000055c08a3303f0 in QList<KActionCollection*>::detach_helper_grow(int, int) (this=0x55c08c1105b8, i=<optimized out>, c=1) at /usr/include/qt5/QtCore/qlist.h:803
#13 0x000055c08a36a071 in QList<RCommand*>::append(RCommand* const&) (this=<optimized out>, t=@0x7ffe99d655c0: 0x55c08c369910) at /usr/include/qt5/QtCore/qlist.h:623
#14 0x000055c08a437fbd in RCommandReceiver::addCommand(RCommand*) (command=<optimized out>, this=0x55c08c1105b0) at /usr/src/debug/rkward-0.7.2-2.fc34.x86_64/rkward/rbackend/rcommandreceiver.cpp:48
#15 RCommand::addReceiver(RCommandReceiver*) (receiver=0x55c08c1105b0, this=0x55c08c369910) at /usr/src/debug/rkward-0.7.2-2.fc34.x86_64/rkward/rbackend/rcommand.cpp:94
#16 RCommand::addReceiver(RCommandReceiver*) (this=0x55c08c369910, receiver=0x55c08c1105b0) at /usr/src/debug/rkward-0.7.2-2.fc34.x86_64/rkward/rbackend/rcommand.cpp:86
#17 0x000055c08a4381e1 in RCommand::RCommand(QString const&, int, QString const&, RCommandReceiver*, int) (this=0x55c08c369910, command=..., type=<optimized out>, rk_equiv=..., receiver=0x55c08c1105b0, flags=<optimized out>, this=<optimized out>, command=<optimized out>, type=<optimized out>, rk_equiv=<optimized out>, receiver=<optimized out>, flags=<optimized out>) at /usr/src/debug/rkward-0.7.2-2.fc34.x86_64/rkward/rbackend/rcommand.cpp:61
#18 0x000055c08a385c44 in LoadUnloadWidget::doLoadUnload() (this=0x55c08c110580) at /usr/src/debug/rkward-0.7.2-2.fc34.x86_64/rkward/dialogs/rkloadlibsdialog.cpp:620
#19 0x000055c08a3903c7 in LoadUnloadWidget::ok() (this=0x55c08c110580) at /usr/src/debug/rkward-0.7.2-2.fc34.x86_64/rkward/dialogs/rkloadlibsdialog.cpp:577
#20 LoadUnloadWidget::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) (_o=0x55c08c110580, _id=<optimized out>, _a=<optimized out>, _c=<optimized out>) at /usr/src/debug/rkward-0.7.2-2.fc34.x86_64/x86_64-redhat-linux-gnu/rkward/dialogs/dialogs_autogen/EWIEGA46WW/moc_rkloadlibsdialog.cpp:347
#21 0x00007fbe16b374fd in doActivate<false>(QObject*, int, void**) (sender=0x55c08c0df890, signal_index=8, argv=0x7ffe99d657a0) at kernel/qobject.cpp:3898
#22 0x00007fbe16b319e7 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (sender=sender@entry=0x55c08c0df890, m=m@entry=0x7fbe17bef8e0 <QDialog::staticMetaObject>, local_signal_index=local_signal_index@entry=1, argv=argv@entry=0x0) at kernel/qobject.cpp:3946
#23 0x00007fbe178d3447 in QDialog::accepted() (this=this@entry=0x55c08c0df890) at .moc/moc_qdialog.cpp:236
#24 0x00007fbe178d3898 in QDialogPrivate::finalize(int, int) (this=<optimized out>, resultCode=1, dialogCode=<optimized out>) at dialogs/qdialog.cpp:176
#25 0x000055c08a380f55 in RKLoadLibsDialog::~RKLoadLibsDialog() (this=0x55c08c0df890, this=<optimized out>) at /usr/src/debug/rkward-0.7.2-2.fc34.x86_64/rkward/dialogs/rkloadlibsdialog.cpp:86
#26 0x000055c08a380fdd in RKLoadLibsDialog::~RKLoadLibsDialog() (this=0x55c08c0df890, this=<optimized out>) at /usr/src/debug/rkward-0.7.2-2.fc34.x86_64/rkward/dialogs/rkloadlibsdialog.cpp:88
#27 0x00007fbe16b2deda in QObjectPrivate::deleteChildren() (this=this@entry=0x55c08be366b0) at kernel/qobject.cpp:2104
#28 0x00007fbe17711f66 in QWidget::~QWidget() (this=0x55c08be2c380, __in_chrg=<optimized out>) at kernel/qwidget.cpp:1522
#29 0x000055c08a396e85 in RKSetupWizard::~RKSetupWizard() (this=0x55c08be2c380, this=<optimized out>) at /usr/src/debug/rkward-0.7.2-2.fc34.x86_64/rkward/dialogs/rksetupwizard.cpp:231
#30 RKSetupWizard::fullInteractiveCheck(RKSetupWizard::InvokationReason, QList<RKSetupWizardItem*> const&) (settings_items=..., reason=RKSetupWizard::NewVersionRKWard) at /usr/src/debug/rkward-0.7.2-2.fc34.x86_64/rkward/dialogs/rksetupwizard.cpp:324
#31 RKSetupWizard::fullInteractiveCheck(RKSetupWizard::InvokationReason, QList<RKSetupWizardItem*> const&) (reason=RKSetupWizard::NewVersionRKWard, settings_items=...) at /usr/src/debug/rkward-0.7.2-2.fc34.x86_64/rkward/dialogs/rksetupwizard.cpp:300
#32 0x000055c08a315639 in RKSetupWizard::doAutoCheck() () at /usr/src/debug/rkward-0.7.2-2.fc34.x86_64/rkward/dialogs/rksetupwizard.cpp:291
#33 RKWardMainWindow::doPostInit() (this=0x55c08ae8aa60) at /usr/src/debug/rkward-0.7.2-2.fc34.x86_64/rkward/rkward.cpp:237
#34 0x00007fbe16b2e257 in QObject::event(QEvent*) (this=0x55c08ae8aa60, e=0x55c08bca79f0) at kernel/qobject.cpp:1314
#35 0x00007fbe1857235d in KXmlGuiWindow::event(QEvent*) (this=0x55c08ae8aa60, ev=0x55c08bca79f0) at /usr/src/debug/kf5-kxmlgui-5.79.0-2.fc34.x86_64/src/kxmlguiwindow.cpp:109
#36 0x00007fbe176d5e73 in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=<optimized out>, receiver=0x55c08ae8aa60, e=0x55c08bca79f0) at kernel/qapplication.cpp:3632
#37 0x00007fbe16b06f48 in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x55c08ae8aa60, event=0x55c08bca79f0) at kernel/qcoreapplication.cpp:1063
#38 0x00007fbe16b09c76 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) (receiver=0x0, event_type=0, data=0x55c08adfe680) at kernel/qcoreapplication.cpp:1817
#39 0x00007fbe16b53c57 in postEventSourceDispatch(GSource*, GSourceFunc, gpointer) (s=s@entry=0x55c08ae2c620) at kernel/qeventdispatcher_glib.cpp:277
#40 0x00007fbe14a950bf in g_main_dispatch (context=0x55c08ae1dc00) at ../glib/gmain.c:3337
#41 g_main_context_dispatch (context=0x55c08ae1dc00) at ../glib/gmain.c:4055
#42 0x00007fbe14ae8358 in g_main_context_iterate.constprop.0 (context=context@entry=0x55c08ae1dc00, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:4131
#43 0x00007fbe14a929b3 in g_main_context_iteration (context=0x55c08ae1dc00, may_block=1) at ../glib/gmain.c:4196
#44 0x00007fbe16b536f8 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x55c08ae2ca50, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#45 0x00007fbe16b059b2 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7ffe99d65e80, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:69
#46 0x00007fbe16b0d544 in QCoreApplication::exec() () at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#47 0x000055c08a30d3e7 in main(int, char**) (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/rkward-0.7.2-2.fc34.x86_64/rkward/main.cpp:401
[Inferior 1 (process 3748) detached]

STEPS TO REPRODUCE
1. Boot a Fedora 34 KDE Plasma installation updated to 2021-2-16. 
2. Install R-4.0.4-1.fc34.x86_64 and rkward-0.7.2-2.fc34.x86_64 
2. update the system with sudo dnf upgrade 
4. Reboot
5. log in to Plasma on Wayland
6. start RKWard
7. In the RKWard wizard, install R2Html and rmarkdown to /usr/lib64/R/library as root. 
8. click Done in the installation window. 

OBSERVED RESULT
RKWard aborted after installing recommended packages

EXPECTED RESULT
RKWard wouldn't crash.

SOFTWARE/OS VERSIONS
Linux/KDE Plasma: Fedora 34
(available in About System)
KDE Plasma Version: 5.21.0
KDE Frameworks Version: 5.79.0
Qt Version: 5.12.2

ADDITIONAL INFORMATION
drkonqi crashed while I was trying to report this crash.
Comment 1 Thomas Friedrichsmeier 2022-04-09 22:02:13 UTC
Git commit 766ddfc7adf35ec4b64bba86b454793737a4d29e by Thomas Friedrichsmeier.
Committed on 09/04/2022 at 21:59.
Pushed by tfry into branch 'master'.

Fix crash when installing packages for within check installation dialog.
Related: bug 441763

M  +1    -0    ChangeLog
M  +32   -46   rkward/dialogs/rkloadlibsdialog.cpp
M  +3    -6    rkward/dialogs/rkloadlibsdialog.h

https://invent.kde.org/education/rkward/commit/766ddfc7adf35ec4b64bba86b454793737a4d29e