Bug 2374870 - RKWard crashed in RKVariable::setNumericFromR when running lines which replaced a variable set to Numeric with a Date object
Summary: RKWard crashed in RKVariable::setNumericFromR when running lines which replac...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: rkward
Version: 42
Hardware: Unspecified
OS: Linux
unspecified
medium
Target Milestone: ---
Assignee: Kevin Kofler
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2025-06-26 03:26 UTC by Matt Fagnani
Modified: 2025-08-17 01:12 UTC (History)
3 users (show)

Fixed In Version: rkward-0.8.2~pre^1.gitcb3c2dd3-1.fc43 rkward-0.8.2~pre^3.gitbee78f2b-1.fc42
Clone Of:
Environment:
Last Closed: 2025-08-05 13:43:17 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
KDE Software Compilation 505955 0 NOR CONFIRMED RKWard crashed in RKVariable::setNumericFromR when running lines which replaced a variable set to Numeric to Unknown 2025-06-26 03:26:39 UTC

Description Matt Fagnani 2025-06-26 03:26:23 UTC
I was running a RKWard 0.8.2 pre-release version rkward-0.8.2~pre^1.gitc45a3696-1.fc42.x86_64 in Plasma 6.4.0 on Wayland in a Fedora 42 KDE installation. I opened a saved workspace with a data set named bp. The data contained a variable Days which was shown as type Unknown in the data set viewer. I changed the type of Days to 1: Numeric in the data set viewer. I opened an R script file which had lines that calculated Days in a way that I think created it as type Unknown or Date again. 

dates = as.Date(paste(bp$Month,bp$Day,bp$Year,sep="-"),tryFormats="%m-%d-%Y");
bp$Days = dates -dates[1]

I ran Run all the first time I saw this problem. RKWard crashed. The first time RKWard ran drkonqi couldn't find the core dump file. A second drkonqi notification was shown, but the full trace couldn't be created. I reproduced the crash running each of the two lines one at a time. RKWard crashed in RKVariable::setNumericFromR after the second line of my program. The crash was a segmentation fault when that function was on row 0 of the data set. The pointers in data->cell_doubles were null, but they might not have been initialized yet.

(gdb) frame 5
#5  0x0000562fa47095a8 in RKVariable::setNumericFromR (this=0x562fdb3adde0, to_row=65, numdata=..., from_row=0)
    at /usr/src/debug/rkward-0.8.2~pre^1.gitc45a3696-1.fc42.x86_64/rkward/core/rkvariable.cpp:583
583                                     data->cell_doubles[row] = numdata[i];
(gdb) p data
$1 = (RKVariable::RKVarEditData *) 0x562fdbc64220

(gdb) p data->cell_doubles
$2 = {<QListSpecialMethods<double>> = {<QListSpecialMethodsBase<double>> = {<No data fields>}, <No data fields>}, d = {
    d = 0x0, ptr = 0x0, size = 0}}
(gdb) p numdata
$3 = (const QVector &) @0x7fffdf7032a0: {<QListSpecialMethods<double>> = {<QListSpecialMethodsBase<double>> = {<No data fields>}, <No data fields>}, d = {d = 0x7f27c41d6e60, ptr = 0x7f27c41d6e70, size = 66}}
(gdb) p i
$4 = 0
(gdb) l
578
579                             if (std::isnan(numdata[i])) {
580                                     data->cell_states[row] |= RKVarEditData::NA;
581                             } else {
582                                     data->cell_states[row] |= RKVarEditData::Valid;
583                                     data->cell_doubles[row] = numdata[i];
584                             }
585                             ++i;
586                     }
587             }
(gdb) p row
$5 = 0

This crash didn't seem to happen if I didn't change Days to Numeric in the data set viewer before running the script lines.

-- Backtrace (Reduced):
#4  0x000056119e7175a8 in RKVariable::setNumericFromR (this=0x5611b5f45080, to_row=65, numdata=..., from_row=0) at /usr/src/debug/rkward-0.8.2~pre^1.gitc45a3696-1.fc42.x86_64/rkward/core/rkvariable.cpp:583
#5  0x000056119e719201 in operator() (__closure=0x5611b6b80fe8, command=<optimized out>) at /usr/src/debug/rkward-0.8.2~pre^1.gitc45a3696-1.fc42.x86_64/rkward/core/rkvariable.cpp:240
#6  0x000056119e7264b1 in std::function<void(RCommand*)>::operator() (this=0x5611b6b80fe8, __args#0=<optimized out>) at /usr/include/c++/15/bits/std_function.h:593
#7  RObjectLifeTimeGuard::addCommandFinishedCallback(RCommand*, std::function<void (RCommand*)>)::{lambda(RCommand*)#1}::operator()(RCommand*) const (__closure=0x5611b6b80fe0, command=<optimized out>) at /usr/src/debug/rkward-0.8.2~pre^1.gitc45a3696-1.fc42.x86_64/rkward/core/robject.cpp:47
#8  QtPrivate::FunctorCall<std::integer_sequence<unsigned long, 0ul>, QtPrivate::List<RCommand*>, void, RObjectLifeTimeGuard::addCommandFinishedCallback(RCommand*, std::function<void (RCommand*)>)::{lambda(RCommand*)#1}>::call(RObjectLifeTimeGuard::addCommandFinishedCallback(RCommand*, std::function<void (RCommand*)>)::{lambda(RCommand*)#1}&, void**)::{lambda()#1}::operator()() const (__closure=<optimized out>) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:116
#9  QtPrivate::FunctorCallBase::call_internal<void, QtPrivate::FunctorCall<std::integer_sequence<unsigned long, 0ul>, QtPrivate::List<RCommand*>, void, RObjectLifeTimeGuard::addCommandFinishedCallback(RCommand*, std::function<void (RCommand*)>)::{lambda(RCommand*)#1}>::call(RObjectLifeTimeGuard::addCommandFinishedCallback(RCommand*, std::function<void (RCommand*)>)::{lambda(RCommand*)#1}&, void**)::{lambda()#1}>(void**, QtPrivate::FunctorCall<std::integer_sequence<unsigned long, 0ul>, QtPrivate::List<RCommand*>, void, RObjectLifeTimeGuard::addCommandFinishedCallback(RCommand*, std::function<void (RCommand*)>)::{lambda(RCommand*)#1}>::call(RObjectLifeTimeGuard::addCommandFinishedCallback(RCommand*, std::function<void (RCommand*)>)::{lambda(RCommand*)#1}&, void**)::{lambda()#1}&&) (args=<optimized out>, fn=...) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:65
#10 QtPrivate::FunctorCall<std::integer_sequence<unsigned long, 0ul>, QtPrivate::List<RCommand*>, void, RObjectLifeTimeGuard::addCommandFinishedCallback(RCommand*, std::function<void (RCommand*)>)::{lambda(RCommand*)#1}>::call(RObjectLifeTimeGuard::addCommandFinishedCallback(RCommand*, std::function<void (RCommand*)>)::{lambda(RCommand*)#1}&, void**) (f=..., arg=<optimized out>) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:115
#11 QtPrivate::FunctorCallable<RObjectLifeTimeGuard::addCommandFinishedCallback(RCommand*, std::function<void (RCommand*)>)::{lambda(RCommand*)#1}, RCommand*>::call<QtPrivate::List<RCommand*>, void>(RObjectLifeTimeGuard::addCommandFinishedCallback(RCommand*, std::function<void (RCommand*)>)::{lambda(RCommand*)#1}&, void*, void**) (f=..., arg=<optimized out>) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:337
#12 QtPrivate::QCallableObject<RObjectLifeTimeGuard::addCommandFinishedCallback(RCommand*, std::function<void (RCommand*)>)::{lambda(RCommand*)#1}, QtPrivate::List<RCommand*>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) (which=<optimized out>, this_=0x5611b6b80fd0, r=<optimized out>, a=<optimized out>, ret=<optimized out>) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:547
#13 0x00007f0d36f657ba in QtPrivate::QSlotObjectBase::call (this=0x5611b6b80fd0, r=0x5611b66f7590, a=0x7ffca321a5f0) at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/kernel/qobjectdefs_impl.h:461
#14 doActivate<false> (sender=0x5611b66f7590, signal_index=3, argv=argv@entry=0x7ffca321a5f0) at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/kernel/qobject.cpp:4146
[...]
#17 RCommandNotifier::commandFinished (this=<optimized out>, _t1=0x5611b72f7c90) at /usr/src/debug/rkward-0.8.2~pre^1.gitc45a3696-1.fc42.x86_64/redhat-linux-build/rkward/rbackend/rbackend_autogen/EWIEGA46WW/moc_rcommand.cpp:138
#18 RCommandNotifier::emitFinished (this=<optimized out>, command=0x5611b72f7c90) at /usr/src/debug/rkward-0.8.2~pre^1.gitc45a3696-1.fc42.x86_64/rkward/rbackend/rcommand.h:81
#19 RCommand::finished (this=0x5611b72f7c90) at /usr/src/debug/rkward-0.8.2~pre^1.gitc45a3696-1.fc42.x86_64/rkward/rbackend/rcommand.cpp:71
#21 0x000056119e751f08 in RInterface::handleRequest (this=0x5611b49f1780, request=<optimized out>) at /usr/src/debug/rkward-0.8.2~pre^1.gitc45a3696-1.fc42.x86_64/rkward/rbackend/rkrinterface.cpp:355
#22 0x00007f0d36f565b5 in QObject::event (this=<optimized out>, e=<optimized out>) at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/kernel/qobject.cpp:1461

When I ran bp$Days = as.numeric(dates -dates[1]) , the problem didn't happen. The problem seemed to be due to assigning a Date object to a numeric variable.

I reproduced the problem in a simpler way by creating a new workspace and data set my.data which had a numeric variable var by default, then running my.data$var = as.Date("1-1-2025",tryFormats="%m-%d-%Y") in the R console.
The first time I tried this, the crash had the same sort of trace, but the second time, the trace was different. KXMLGUIFactory::container had this=0x0, which might've resulted in a null pointer dereference in std::__uniq_ptr_impl<KXMLGUIFactoryPrivate, std::default_delete<KXMLGUIFactoryPrivate> >::_M_ptr. The trace referred to a context menu such as in TwinTable::contextMenu, and I did use a context menu to copy the line from a script file to the R console before changing it. I'm not sure if this is the same problem.

(gdb) bt
#0  __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=11, no_tid=no_tid@entry=0)
    at pthread_kill.c:44
#1  0x00007fc1d687c1e3 in __pthread_kill_internal (threadid=<optimized out>, signo=11) at pthread_kill.c:89
#2  0x00007fc1d6822afe in __GI_raise (sig=11) at ../sysdeps/posix/raise.c:26
#3  0x00007fc1e4f9e533 in KCrash::defaultCrashHandler(int) () at /lib64/libKF6Crash.so.6
#4  0x00007fc1d6822c30 in <signal handler called> () at /lib64/libc.so.6
#5  0x00007fc1d898f1be in std::__uniq_ptr_impl<KXMLGUIFactoryPrivate, std::default_delete<KXMLGUIFactoryPrivate> >::_M_ptr (this=<optimized out>) at /usr/include/c++/15/bits/unique_ptr.h:193
#6  std::unique_ptr<KXMLGUIFactoryPrivate, std::default_delete<KXMLGUIFactoryPrivate> >::get (this=<optimized out>)
    at /usr/include/c++/15/bits/unique_ptr.h:473
#7  std::unique_ptr<KXMLGUIFactoryPrivate, std::default_delete<KXMLGUIFactoryPrivate> >::operator->
    (this=<optimized out>) at /usr/include/c++/15/bits/unique_ptr.h:466
#8  KXMLGUIFactory::container
    (this=0x0, containerName=..., client=client@entry=0x55620da95180, useTagName=useTagName@entry=false)
    at /usr/src/debug/kf6-kxmlgui-6.15.0-1.fc42.x86_64/src/kxmlguifactory.cpp:450
#9  0x00005561e42d0c90 in TwinTable::contextMenu
    (this=0x55620da95080, row=<optimized out>, col=<optimized out>, pos=...)
    at /usr/src/debug/rkward-0.8.2~pre^1.gitc45a3696-1.fc42.x86_64/rkward/dataeditor/twintable.cpp:325
#10 0x00007fc1d57657ba in QtPrivate::QSlotObjectBase::call (this=0x55620daa6c50, r=0x55620da95080, a=0x7ffe187352f0)
    at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/kernel/qobjectdefs_impl.h:461
#11 doActivate<false> (sender=0x7fc1b000b0b0, signal_index=15, argv=argv@entry=0x7ffe187352f0)
    at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/kernel/qobject.cpp:4146
#12 0x00007fc1d575c089 in QMetaObject::activate
    (sender=sender@entry=0x7fc1b000b0b0, m=<optimized out>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7ffe187352f0) at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/kernel/qobject.cpp:4206
#13 0x00005561e42d8fa6 in QMetaObject::activate<void, int, int, QPoint>
    (sender=<optimized out>, mo=<optimized out>, local_signal_index=<optimized out>, ret=<optimized out>)
--Type <RET> for more, q to quit, c to continue without paging--c
    at /usr/include/qt6/QtCore/qobjectdefs.h:306
#14 TwinTableMember::contextMenuRequest
    (this=<optimized out>, _t1=<optimized out>, _t2=<optimized out>, _t3=<optimized out>)
    at /usr/src/debug/rkward-0.8.2~pre^1.gitc45a3696-1.fc42.x86_64/redhat-linux-build/rkward/dataeditor/dataeditor_autogen/EWIEGA46WW/moc_twintablemember.cpp:162
#15 TwinTableMember::handleContextMenuRequest (this=0x7fc1b000b0b0, pos=...)
    at /usr/src/debug/rkward-0.8.2~pre^1.gitc45a3696-1.fc42.x86_64/rkward/dataeditor/twintablemember.cpp:160
#16 0x00007fc1d57657ba in QtPrivate::QSlotObjectBase::call (this=0x55620da86c60, r=0x7fc1b000b0b0, a=0x7ffe18735430)
    at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/kernel/qobjectdefs_impl.h:461
#17 doActivate<false> (sender=0x7fc1b000b0b0, signal_index=6, argv=argv@entry=0x7ffe18735430)
    at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/kernel/qobject.cpp:4146
#18 0x00007fc1d575c089 in QMetaObject::activate
    (sender=sender@entry=0x7fc1b000b0b0, m=m@entry=0x7fc1d83a31c0, local_signal_index=local_signal_index@entry=3, argv=argv@entry=0x7ffe18735430) at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/kernel/qobject.cpp:4206
#19 0x00007fc1d7c83632 in QMetaObject::activate<void, QPoint>
    (sender=0x7fc1b000b0b0, mo=0x7fc1d83a31c0, local_signal_index=3, ret=0x0)
    at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/kernel/qobjectdefs.h:306
#20 QWidget::customContextMenuRequested (this=this@entry=0x7fc1b000b0b0, _t1=...)
    at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/redhat-linux-build/src/widgets/Widgets_autogen/include/moc_qwidget.cpp:603
#21 0x00007fc1d7ca79c2 in QWidget::event (this=this@entry=0x7fc1b000b0b0, event=event@entry=0x7ffe187358c0)
    at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/widgets/kernel/qwidget.cpp:9174
#22 0x00007fc1d7d010f6 in QFrame::event (this=0x7fc1b000b0b0, e=0x7ffe187358c0)
    at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/widgets/widgets/qframe.cpp:521
#23 0x00007fc1d56f9caa in QCoreApplicationPrivate::sendThroughObjectEventFilters
    (receiver=receiver@entry=0x55620da6fde0, event=event@entry=0x7ffe187358c0)
    at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/kernel/qcoreapplication.cpp:1243
#24 0x00007fc1d7c3d96f in QApplicationPrivate::notify_helper
    (this=this@entry=0x55620b5264b0, receiver=receiver@entry=0x55620da6fde0, e=e@entry=0x7ffe187358c0)
    at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/widgets/kernel/qapplication.cpp:3297
#25 0x00007fc1d7c494cb in QApplication::notify (this=<optimized out>, receiver=<optimized out>, e=0x7ffe187358c0)
    at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/widgets/kernel/qapplication.cpp:2921
#26 0x00007fc1d56f9f38 in QCoreApplication::notifyInternal2 (receiver=0x55620da6fde0, event=0x7ffe187358c0)
    at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/kernel/qcoreapplication.cpp:1106
#27 0x00007fc1d56f9f6a in QCoreApplication::forwardEvent
    (receiver=<optimized out>, event=<optimized out>, originatingEvent=<optimized out>)
    at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/kernel/qcoreapplication.cpp:1121
#28 0x00007fc1d7cbebed in QWidgetWindow::handleContextMenuEvent (this=<optimized out>, e=0x7ffe18735b00)
    at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/widgets/kernel/qwidgetwindow.cpp:1221
#29 0x00007fc1d7cbeff0 in QWidgetWindow::event (this=<optimized out>, event=<optimized out>)
    at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/widgets/kernel/qwidgetwindow.cpp:369
#30 0x00007fc1d7c3d97f in QApplicationPrivate::notify_helper
    (this=<optimized out>, receiver=0x55620ba0de50, e=0x7ffe18735b00)
    at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/widgets/kernel/qapplication.cpp:3303
#31 0x00007fc1d56f9f38 in QCoreApplication::notifyInternal2 (receiver=0x55620ba0de50, event=0x7ffe18735b00)
    at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/kernel/qcoreapplication.cpp:1106
#32 0x00007fc1d56f9f6a in QCoreApplication::forwardEvent
    (receiver=<optimized out>, event=<optimized out>, originatingEvent=<optimized out>)
    at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/kernel/qcoreapplication.cpp:1121
#33 0x00007fc1d5f588a4 in QWindowPrivate::maybeSynthesizeContextMenuEvent (this=<optimized out>, event=<optimized out>)
    at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/gui/kernel/qwindow_p.h:35
#34 QWindowPrivate::maybeSynthesizeContextMenuEvent (this=<optimized out>, event=<optimized out>)
    at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/gui/kernel/qwindow.cpp:2802
#35 0x00007fc1d7cbc402 in QWidgetWindow::handleMouseEvent (this=0x55620ba0de50, event=0x7ffe18735ed0)
    at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/widgets/kernel/qwidgetwindow.cpp:683
#36 0x00007fc1d7cbeeb3 in QWidgetWindow::event (this=<optimized out>, event=<optimized out>)
    at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/widgets/kernel/qwidgetwindow.cpp:292
#37 0x00007fc1d7c3d97f in QApplicationPrivate::notify_helper
    (this=<optimized out>, receiver=0x55620ba0de50, e=0x7ffe18735ed0)
    at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/widgets/kernel/qapplication.cpp:3303
#38 0x00007fc1d56f9f38 in QCoreApplication::notifyInternal2 (receiver=0x55620ba0de50, event=0x7ffe18735ed0)
    at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/kernel/qcoreapplication.cpp:1106
#39 0x00007fc1d56fa1ad in QCoreApplication::sendSpontaneousEvent (receiver=<optimized out>, event=<optimized out>)
    at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/kernel/qcoreapplication.cpp:1560
#40 0x00007fc1d5ef22a9 in QGuiApplicationPrivate::processMouseEvent (e=0x7fc1a4008780)
    at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/gui/kernel/qguiapplication.cpp:2476
#41 0x00007fc1d5f5c76c in QWindowSystemInterface::sendWindowSystemEvents (flags=flags@entry=...)
    at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/gui/kernel/qwindowsysteminterface.cpp:1113
#42 0x00007fc1d5f5c988 in QWindowSystemInterface::flushWindowSystemEvents (flags=...)
    at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/gui/kernel/qwindowsysteminterface.cpp:1082
#43 0x00007fc1d575662c in QObject::event (this=<optimized out>, e=<optimized out>)
    at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/kernel/qobject.cpp:1431
#44 0x00007fc1d7c3d97f in QApplicationPrivate::notify_helper
    (this=<optimized out>, receiver=0x55620b5727c0, e=0x7fc1ac003bc0)
    at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/widgets/kernel/qapplication.cpp:3303
#45 0x00007fc1d56f9f38 in QCoreApplication::notifyInternal2 (receiver=0x55620b5727c0, event=0x7fc1ac003bc0)
    at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/kernel/qcoreapplication.cpp:1106
#46 0x00007fc1d56fa19d in QCoreApplication::sendEvent (receiver=<optimized out>, event=<optimized out>)
    at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/kernel/qcoreapplication.cpp:1546
#47 0x00007fc1d56fdd26 in QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x55620b557e00)
    at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/kernel/qcoreapplication.cpp:1879
#48 0x00007fc1d5a1016f in postEventSourceDispatch (s=0x55620b56dfc0)
    at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/kernel/qeventdispatcher_glib.cpp:246
#49 0x00007fc1d40e9880 in g_main_dispatch (context=0x7fc1b0000f00) at ../glib/gmain.c:3398
#50 g_main_context_dispatch_unlocked (context=0x7fc1b0000f00) at ../glib/gmain.c:4249
#51 0x00007fc1d40f27a8 in g_main_context_iterate_unlocked
    (context=context@entry=0x7fc1b0000f00, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>)
    at ../glib/gmain.c:4314
#52 0x00007fc1d40f2953 in g_main_context_iteration (context=0x7fc1b0000f00, may_block=1) at ../glib/gmain.c:4379
#53 0x00007fc1d5a0f9ad in QEventDispatcherGlib::processEvents (this=0x55620b505800, flags=...)
    at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/kernel/qeventdispatcher_glib.cpp:399
#54 0x00007fc1d5707b03 in QEventLoop::exec (this=this@entry=0x7ffe18736550, flags=..., flags@entry=...)
    at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/global/qflags.h:77
#55 0x00007fc1d5703419 in QCoreApplication::exec ()
    at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/kernel/qcoreapplication.cpp:1449
#56 0x00007fc1d5eddbad in QGuiApplication::exec ()
    at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/gui/kernel/qguiapplication.cpp:1986
#57 0x00007fc1d7c3d8e9 in QApplication::exec ()
    at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/widgets/kernel/qapplication.cpp:2570
#58 0x00005561e413ddce in main (argc=<optimized out>, argv=<optimized out>)
    at /usr/src/debug/rkward-0.8.2~pre^1.gitc45a3696-1.fc42.x86_64/rkward/main.cpp:294


Reproducible: Always

Steps to Reproduce:
1. Start RKWard
2. create a new workspace and data set my.data which has a numeric variable var by default
3. In the R console, run my.data$var = as.Date("1-1-2025",tryFormats="%m-%d-%Y") To see the first type of trace, enter the line above without using a context menu to copy and paste it.

Actual Results:
RKWard crashed in RKVariable::setNumericFromR when running lines which replaced a variable set to Numeric with a Date object

Expected Results:
RKWard should've assigned the Date values to the numeric variable without crashing

Additional Information:
I reported this problem at https://bugs.kde.org/show_bug.cgi?id=505955

Application: rkward (0.8.1z+0.8.2+devel1)

ApplicationNotResponding [ANR]: false
Qt Version: 6.9.1
Frameworks Version: 6.15.0
Operating System: Linux 6.15.3-200.fc42.x86_64 x86_64
Windowing System: Wayland
Distribution: "Fedora Linux 42 (KDE Plasma Desktop Edition)"
DrKonqi: 6.4.0 [CoredumpBackend]

Comment 1 Iñaki Ucar 2025-06-27 16:10:07 UTC
Thansk for reporting this upstream. Please let us know when they have a fix so that we can build another pre-release (or, better yet, a new release).

Comment 2 Matt Fagnani 2025-07-10 17:56:09 UTC
(In reply to Iñaki Ucar from comment #1)
> Thansk for reporting this upstream. Please let us know when they have a fix
> so that we can build another pre-release (or, better yet, a new release).

Thomas Friedrichsmeier wrote a patch for this problem https://bugs.kde.org/show_bug.cgi?id=505955#c4 https://invent.kde.org/education/rkward/-/commit/dfac743c6e8894ea8383ee5be939d9e87283d8e5 Thanks.

Comment 3 Fedora Update System 2025-08-05 13:40:48 UTC
FEDORA-2025-21ffeee966 (rkward-0.8.2~pre^1.gitcb3c2dd3-1.fc43) has been submitted as an update to Fedora 43.
https://bodhi.fedoraproject.org/updates/FEDORA-2025-21ffeee966

Comment 4 Fedora Update System 2025-08-05 13:41:17 UTC
FEDORA-2025-9c469359a4 (rkward-0.8.2~pre^1.gitcb3c2dd3-1.fc42) has been submitted as an update to Fedora 42.
https://bodhi.fedoraproject.org/updates/FEDORA-2025-9c469359a4

Comment 5 Fedora Update System 2025-08-05 13:43:17 UTC
FEDORA-2025-21ffeee966 (rkward-0.8.2~pre^1.gitcb3c2dd3-1.fc43) has been pushed to the Fedora 43 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 6 Fedora Update System 2025-08-06 02:36:40 UTC
FEDORA-2025-9c469359a4 has been pushed to the Fedora 42 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2025-9c469359a4`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2025-9c469359a4

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 7 Fedora Update System 2025-08-09 04:08:32 UTC
FEDORA-2025-32934af39a has been pushed to the Fedora 42 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2025-32934af39a`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2025-32934af39a

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 8 Fedora Update System 2025-08-17 01:12:33 UTC
FEDORA-2025-32934af39a (rkward-0.8.2~pre^3.gitbee78f2b-1.fc42) has been pushed to the Fedora 42 stable repository.
If problem still persists, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.