GoldenCheetah crashes after creating an new season

218 views
Skip to first unread message

Matthias Warmbold

unread,
Feb 26, 2026, 10:17:08 AM (6 days ago) Feb 26
to golden-cheetah-users
Hi,
I'm using
 [Do Feb 26] > uname -a
Linux fritz 6.8.0-101-generic #101-Ubuntu SMP PREEMPT_DYNAMIC Mon Feb  9 10:15:05 UTC 2026 x86_64 x86_64 x86_64 GNU/Linux
and I use GC V3.7.1
Yesterday I created seasons for differend persons but after pressing OK for each season, GC crashes.
After starting GC again, the season was created.
For me, it's o.k. i just wanted report the crash.

Thanks for that great Software!

Matthias

Ale Martinez

unread,
Feb 26, 2026, 10:30:26 AM (6 days ago) Feb 26
to golden-cheetah-users
El jueves, 26 de febrero de 2026 a la(s) 12:17:08 p.m. UTC-3, warmbold...@gmail.com escribió:
Hi,
I'm using
 [Do Feb 26] > uname -a
Linux fritz 6.8.0-101-generic #101-Ubuntu SMP PREEMPT_DYNAMIC Mon Feb  9 10:15:05 UTC 2026 x86_64 x86_64 x86_64 GNU/Linux
and I use GC V3.7.1
Yesterday I created seasons for differend persons but after pressing OK for each season, GC crashes.
After starting GC again, the season was created.
For me, it's o.k. i just wanted report the crash.

Hi, we need the stack trace for a crash report, see https://github.com/GoldenCheetah/GoldenCheetah/wiki/Crash-diagnosis

marcen

unread,
Mar 1, 2026, 1:13:15 PM (3 days ago) Mar 1
to golden-cheetah-users
Hello, GC also crashes under Arch Linux when I create a new season. The GC version is from January 29, 2026, and the build ID is 5010. I hope the attached backtrace helps.
Crashe season.txt

Matthias Warmbold

unread,
Mar 1, 2026, 7:30:51 PM (3 days ago) Mar 1
to golden-cheetah-users
Hi,
sorry, that I can't send you the stack trace, my gdb told me that there are no debugging symbols. Do i need a special Version of GC to run with the gdb or must I compile my own AppImage with the debugging Symbols?

After I created a new season and added a few phases with GC 3.8, GC crashes with the message: [22:17:34.386] debug: Failed to load GC translator for  "en"

Matthias Warmbold

unread,
Mar 1, 2026, 7:31:05 PM (3 days ago) Mar 1
to golden-cheetah-users

I hope I got a information  you could use: I choose a Phase in a season. After that GC 3.8 crashes immediately.
Ale Martinez schrieb am Donnerstag, 26. Februar 2026 um 16:30:26 UTC+1:
GCStack.txt

Ale Martinez

unread,
Mar 2, 2026, 8:50:15 AM (2 days ago) Mar 2
to golden-cheetah-users
El domingo, 1 de marzo de 2026 a la(s) 9:31:05 p.m. UTC-3, warmbold...@gmail.com escribió:

I hope I got a information  you could use: I choose a Phase in a season. After that GC 3.8 crashes immediately.

Hi, once you reach the gdb prompt after the crash:
Thread 1 "AppRun" received signal SIGSEGV, Segmentation fault.
0x0000555555b44ed5 in LTMWindow::dataTable(bool) ()
(gdb) 


you have to enter bt there to run the backtrace command and get the stack trace, as explained in the wiki.
Context would be useful too s.t. which view and chart is visible when this happens.

Ale Martinez

unread,
Mar 2, 2026, 8:54:05 AM (2 days ago) Mar 2
to golden-cheetah-users
El domingo, 1 de marzo de 2026 a la(s) 3:13:15 p.m. UTC-3, marcen escribió:
Hello, GC also crashes under Arch Linux when I create a new season. The GC version is from January 29, 2026, and the build ID is 5010. I hope the attached backtrace helps.

Hi Marcen, according to the stack trace:
#11 0x00007fffe987851c in QString::arg(QStringView, int, QChar) const () from /tmp/.mount_GoldenoFjdeJ/lib/libQt6Core.so.6
#12 0x00007fffe9878603 in QString::arg(QString const&, int, QChar) const () from /tmp/.mount_GoldenoFjdeJ/lib/libQt6Core.so.6
#13 0x0000555556011268 in Calendar::activateDateRange(DateRange const&, bool, bool) ()
#14 0x0000555555bcfa2d in CalendarWindow::updateSeason(Season const*, bool) ()
it looks related to Calendar, but since it is a bac alloc error it may be a memory corruption issue happening in other place, I cannot reproduce this for now.
Which view and chart was active when the crash happened, is it reproducible?
 

Joachim Kohlhammer

unread,
Mar 2, 2026, 10:41:33 AM (2 days ago) Mar 2
to golden-cheetah-users
I can look into this. As I can''t reproduce the crash, Marcen and Matthias, can you please try describing
  • your workflow in creating the season
  • is the crash fully reproducible (i.e. happens it every time)
  • if you see unusual memory or cpu spikes before the crash
I will probably need your support for testing. And thanks for the stacktrace, this is a great starting point.

Cheers, Joachim

marcen

unread,
Mar 2, 2026, 12:34:14 PM (2 days ago) Mar 2
to golden-cheetah-users
Hello everyone,

I hope this description helps you to reproduce the crash.

Here is a description of how GC crashes for me.

1. Start GC.
2. Select an athlete.
3. Select “Trends” and wait until the view is fully loaded.
4. Create a session from January 1, 2026, to today.
Bildschirmfoto_20260302_175414.png
5. It takes about 2–3 seconds for GC to crash.

The default perspective loaded in the Trends view was created by me, and the first chart is a trends chart.

To reproduce this,
1. It is best to use a test user and reset the Trends view.
2. Create a new perspective under the Trends view and place the perspective at the top.
2. Select the newly created perspective.
3. Add a trend chart. E.g., with 5 s max. power.
4. Create the session as described in point 4 above. 
5. GC should crash

Even when I reset the layout, GC still crashes when a session is created.
I have also renamed home-perspectives.xml so that a new one is created, but that did not help either.
I need to test it again with a newly created user.

Matthias Warmbold

unread,
Mar 2, 2026, 12:34:56 PM (2 days ago) Mar 2
to golden-che...@googlegroups.com
Hi,
yes it reproduceable. I created a season and in that season a phase. That was o.k. but then I created a phase with, I actually don't remember the correct name. I think it was Camp in the choosebox which kind of phase it should be.
After that GC crashes. And every time I choose the phase with the camp.

Today i created an other athlete and did the same, but for this athlete all went fine. Sometimes it crashes while I safe this or that but nothing reproduceable.

Thanks for your help!


Matthias

--
Matthias Warmbold       Tel.: 01637756472
Hintere Masch 1
32549 Bad Oeynhausen
Ich verwende Signal, den sicheren Messanger: https://signal.org/install 
Oder
jabber: mw...@jabber.de

Paul J

unread,
Mar 2, 2026, 1:28:02 PM (2 days ago) Mar 2
to golden-cheetah-users
While trying to reproduce this crash, I managed to create another one.

I dragged a phase and dropped it on it parent season... its repeatable

Unhandled exception 0xc0000005
RAX=ffffffff RCX=0 RDX=20c33453010 RBX=0
RSP=fbfb98360 RBP=fbfb98490 RSI=20c3bcf53f0 RDI=20c33453010
R8=20c3319f460 R9=20c3319f460 R10=20c05620000 R11=20c38a215c0
R12=20c33dc28f0 R13=fbfb985e0 R14=1 R15=20c3bcf53f0

Qt6Widgets.dll!QTreeWidgetItem::indexOfChild+0x10
GoldenCheetah.exe!LTMSidebar::dateRangeTreeWidgetSelectionChanged+0x13e Gui\LTMSidebar.cpp:406
Qt6Core.dll!QObject::qt_static_metacall+0x14bb
Qt6Core.dll!QMetaObject::activate+0x84
Qt6Widgets.dll!QTreeWidget::selectedItems+0x5e2
Qt6Widgets.dll!QComboBox::iconSize+0x398
Qt6Core.dll!QObject::qt_static_metacall+0x1451
Qt6Core.dll!QMetaObject::activate+0x84
Qt6Core.dll!QItemSelectionModel::emitSelectionChanged+0x79c
Qt6Core.dll!QItemSelectionModel::select+0x30c
Qt6Core.dll!QItemSelectionModel::select+0x48
Qt6Widgets.dll!QTreeWidgetItem::setSelected+0x92
Qt6Core.dll!QObject::qt_static_metacall+0x14bb
Qt6Core.dll!QMetaObject::activate+0x84
GoldenCheetah.exe!SeasonTreeView::itemMoved+0x56 release\moc_SeasonDialogs.cpp:497
GoldenCheetah.exe!SeasonTreeView::dropEvent+0x104 Core\SeasonDialogs.cpp:737
Qt6Widgets.dll!QWidget::event+0x6ce
Qt6Widgets.dll!QFrame::event+0x33
Qt6Widgets.dll!QAbstractItemView::viewportEvent+0x4d9
Qt6Core.dll!QCoreApplicationPrivate::sendThroughObjectEventFilters+0xd7
Qt6Widgets.dll!QApplicationPrivate::notify_helper+0x137
Qt6Widgets.dll!QApplication::notify+0x1310
Qt6Core.dll!QCoreApplication::notifyInternal2+0x10f
Qt6Widgets.dll!QWidgetRepaintManager::updateStaticContentsSize+0x1f0e
Qt6Widgets.dll!QWidgetRepaintManager::updateStaticContentsSize+0xe57
Qt6Widgets.dll!QApplicationPrivate::notify_helper+0x152
Qt6Widgets.dll!QApplication::notify+0x16b6
Qt6Core.dll!QCoreApplication::notifyInternal2+0x10f
Qt6Gui.dll!QGuiApplicationPrivate::processDrop+0xc0
Qt6Gui.dll!QWindowSystemInterface::handleDrop+0xd1
qwindows.dll!qt_plugin_query_metadata_v2+0x6fce3
ole32.dll!DllGetClassObjectWOW+0x45b8
ole32.dll!DoDragDrop+0x1089
ole32.dll!Ordinal800+0x50c
ole32.dll!GetRunningObjectTable+0x2cd7
ole32.dll!DoDragDrop+0x127
qwindows.dll!qt_plugin_query_metadata_v2+0x7246c
qwindows.dll!qt_plugin_query_metadata_v2+0x71720
Qt6Gui.dll!QDragManager::drag+0x14f
Qt6Gui.dll!QDrag::exec+0xb7
Qt6Widgets.dll!QAbstractItemView::startDrag+0x1c0
Qt6Widgets.dll!QAbstractItemView::keyboardSearch+0xb90
Qt6Widgets.dll!QAbstractItemView::mouseMoveEvent+0xfd
Qt6Widgets.dll!QTreeView::mouseMoveEvent+0x88
Qt6Widgets.dll!QWidget::event+0x126
Qt6Widgets.dll!QFrame::event+0x33
Qt6Widgets.dll!QAbstractItemView::viewportEvent+0x4d9
Qt6Core.dll!QCoreApplicationPrivate::sendThroughObjectEventFilters+0xd7
Qt6Widgets.dll!QApplicationPrivate::notify_helper+0x137
Qt6Widgets.dll!QApplication::notify+0x718
Qt6Core.dll!QCoreApplication::notifyInternal2+0x10f
Qt6Widgets.dll!QApplicationPrivate::sendMouseEvent+0x416
Qt6Widgets.dll!QWidgetRepaintManager::updateStaticContentsSize+0x3387
Qt6Widgets.dll!QWidgetRepaintManager::updateStaticContentsSize+0xcff
Qt6Widgets.dll!QApplicationPrivate::notify_helper+0x152
Qt6Widgets.dll!QApplication::notify+0x16b6
Qt6Core.dll!QCoreApplication::notifyInternal2+0x10f
Qt6Gui.dll!QGuiApplicationPrivate::processMouseEvent+0x7cc
Qt6Gui.dll!QWindowSystemInterface::sendWindowSystemEvents+0xfb
Qt6Core.dll!QEventDispatcherWin32::processEvents+0x90
Qt6Gui.dll!QWindowsGuiEventDispatcher::processEvents+0x19
Qt6Core.dll!QEventLoop::exec+0x1c4
Qt6Core.dll!QCoreApplication::exec+0x162
GoldenCheetah.exe!main+0x2bad Core\main.cpp:770
GoldenCheetah.exe!qtEntryPoint+0x30 entrypoint\qtentrypoint_win.cpp:59
GoldenCheetah.exe!__scrt_common_main_seh+0x106 vctools\crt\vcstartup\src\startup\exe_common.inl:288
KERNEL32.DLL!BaseThreadInitThunk+0x17
ntdll.dll!RtlUserThreadStart+0x2c

marcen

unread,
Mar 2, 2026, 2:51:24 PM (2 days ago) Mar 2
to golden-cheetah-users
Okay, it's not that easy to reproduce.
After I deleted the PMC for the user who was always crashing, I couldn't reproduce the crash as I described above.
I have attached the home-perspectives.xml file that causes the crash.
Unfortunately, I haven't yet found a pattern that allows me to reproduce this crash.
home-perspectives.xml

Joachim Kohlhammer

unread,
Mar 2, 2026, 4:38:05 PM (2 days ago) Mar 2
to golden-cheetah-users
Dragging a phase also crashes for me. Marcens crash has probably a different cause. Will look into both but start with the dragging:

#0  0x00007ffff755ee40 in QTreeWidgetItem::treeModel(QTreeWidget*) const () at /usr/lib/x86_64-linux-gnu/libQt6Widgets.so.6
#1  0x00007ffff75623a0 in QTreeWidgetItem::executePendingSort() const () at /usr/lib/x86_64-linux-gnu/libQt6Widgets.so.6
#2  0x0000555555a2aebc in QTreeWidgetItem::indexOfChild (this=0x0, achild=0x55555a45a7e0) at /usr/include/x86_64-linux-gnu/qt6/QtWidgets/qtreewidget.h:216
#3  0x0000555555f37b27 in LTMSidebar::dateRangeTreeWidgetSelectionChanged (this=0x55555a2f3760) at Gui/LTMSidebar.cpp:404
#4  0x000055555643e0e6 in LTMSidebar::qt_static_metacall (_o=0x55555a2f3760, _c=QMetaObject::InvokeMetaMethod, _id=2, _a=0x7fffffff9c28) at .moc/moc_LTMSidebar.cpp:218
#5  0x00007fffe9bff59d in ??? () at /usr/lib/x86_64-linux-gnu/libQt6Core.so.6
#6  0x00007ffff755a985 in ??? () at /usr/lib/x86_64-linux-gnu/libQt6Widgets.so.6
#7  0x00007fffe9bff6a1 in ??? () at /usr/lib/x86_64-linux-gnu/libQt6Core.so.6
#8  0x00007fffe9dc51e0 in QItemSelectionModel::selectionChanged(QItemSelection const&, QItemSelection const&) () at /usr/lib/x86_64-linux-gnu/libQt6Core.so.6
#9  0x00007fffe9dcd0ed in QItemSelectionModel::select(QItemSelection const&, QFlags<QItemSelectionModel::SelectionFlag>) () at /usr/lib/x86_64-linux-gnu/libQt6Core.so.6
#10 0x00007fffe9dca436 in QItemSelectionModel::select(QModelIndex const&, QFlags<QItemSelectionModel::SelectionFlag>) () at /usr/lib/x86_64-linux-gnu/libQt6Core.so.6
#11 0x00007ffff7557ae0 in QTreeWidgetItem::setSelected(bool) () at /usr/lib/x86_64-linux-gnu/libQt6Widgets.so.6
#12 0x0000555555f3dc28 in LTMSidebar::dateRangeMoved (this=0x55555a2f3760, item=0x55555a45a7e0, oldposition=0, newposition=1) at Gui/LTMSidebar.cpp:1105
#13 0x000055555643e15e in LTMSidebar::qt_static_metacall (_o=0x55555a2f3760, _c=QMetaObject::InvokeMetaMethod, _id=5, _a=0x7fffffffa290) at .moc/moc_LTMSidebar.cpp:221
#14 0x00007fffe9bff59d in ??? () at /usr/lib/x86_64-linux-gnu/libQt6Core.so.6
#15 0x000055555640f480 in QMetaObject::activate<void, QTreeWidgetItem*, int, int>
   (sender=0x55555a3c23f0, mo=0x55555708a480 <SeasonTreeView::staticMetaObject>, local_signal_index=0, ret=0x0) at /usr/include/x86_64-linux-gnu/qt6/QtCore/qobjectdefs.h:306
#16 0x0000555556432704 in SeasonTreeView::itemMoved (this=0x55555a3c23f0, _t1=0x55555a45a7e0, _t2=0, _t3=1) at .moc/moc_SeasonDialogs.cpp:398
#17 0x0000555555cdab0f in SeasonTreeView::dropEvent (this=0x55555a3c23f0, event=0x7fffffffa870) at Core/SeasonDialogs.cpp:735
#18 0x00007ffff7211ea7 in QWidget::event(QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt6Widgets.so.6
#19 0x00007ffff72759c2 in QFrame::event(QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt6Widgets.so.6
#20 0x00007fffe9ba355a in QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt6Core.so.6
#21 0x00007ffff71b9c78 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt6Widgets.so.6
#22 0x00007ffff71bedb2 in QApplication::notify(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt6Widgets.so.6
#23 0x00007fffe9ba6928 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt6Core.so.6
#24 0x00007ffff722d7ac in ??? () at /usr/lib/x86_64-linux-gnu/libQt6Widgets.so.6
#25 0x00007ffff71b9c88 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt6Widgets.so.6
#26 0x00007fffe9ba6928 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt6Core.so.6
#27 0x00007fffea3f3c51 in QGuiApplicationPrivate::processDrop(QWindow*, QMimeData const*, QPoint const&, QFlags<Qt::DropAction>, QFlags<Qt::MouseButton>, QFlags<Qt::KeyboardModifier>) ()
   at /usr/lib/x86_64-linux-gnu/libQt6Gui.so.6
#28 0x00007fffea45a421 in QWindowSystemInterface::handleDrop(QWindow*, QMimeData const*, QPoint const&, QFlags<Qt::DropAction>, QFlags<Qt::MouseButton>, QFlags<Qt::KeyboardModifier>) ()
   at /usr/lib/x86_64-linux-gnu/libQt6Gui.so.6
#29 0x00007fffe26dc7ca in ??? () at /usr/lib/x86_64-linux-gnu/libQt6XcbQpa.so.6
#30 0x00007fffe26dd0c8 in ??? () at /usr/lib/x86_64-linux-gnu/libQt6XcbQpa.so.6
#31 0x00007fffea79f82d in QBasicDrag::eventFilter(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt6Gui.so.6
#32 0x00007fffe9ba3436 in QCoreApplicationPrivate::sendThroughApplicationEventFilters(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt6Core.so.6
#33 0x00007ffff71b9ca3 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt6Widgets.so.6
#34 0x00007fffe9ba6928 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt6Core.so.6
#35 0x00007fffea3f57c8 in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) () at /usr/lib/x86_64-linux-gnu/libQt6Gui.so.6
#36 0x00007fffea45417b in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/x86_64-linux-gnu/libQt6Gui.so.6
#37 0x00007fffe26af68e in ??? () at /usr/lib/x86_64-linux-gnu/libQt6XcbQpa.so.6
#38 0x00007fffe69015ee in ??? () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#39 0x00007fffe690497f in ??? () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#40 0x00007fffe6905110 in g_main_context_iteration () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#41 0x00007fffe9e04f48 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/x86_64-linux-gnu/libQt6Core.so.6
#42 0x00007fffe9bafe53 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/x86_64-linux-gnu/libQt6Core.so.6
#43 0x00007fffea796bd7 in QBasicDrag::drag(QDrag*) () at /usr/lib/x86_64-linux-gnu/libQt6Gui.so.6
--Type <RET> for more, q to quit, c to continue without paging--
#44 0x00007fffea78f3cb in QDragManager::drag(QDrag*) () at /usr/lib/x86_64-linux-gnu/libQt6Gui.so.6
#45 0x00007fffea794fe1 in QDrag::exec(QFlags<Qt::DropAction>, Qt::DropAction) () at /usr/lib/x86_64-linux-gnu/libQt6Gui.so.6
#46 0x00007ffff74c4bd2 in QAbstractItemView::startDrag(QFlags<Qt::DropAction>) () at /usr/lib/x86_64-linux-gnu/libQt6Widgets.so.6
#47 0x00007ffff74c391c in ??? () at /usr/lib/x86_64-linux-gnu/libQt6Widgets.so.6
#48 0x00007ffff74b690d in QAbstractItemView::mouseMoveEvent(QMouseEvent*) () at /usr/lib/x86_64-linux-gnu/libQt6Widgets.so.6
#49 0x00007ffff7211cdf in QWidget::event(QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt6Widgets.so.6
#50 0x00007ffff72759c2 in QFrame::event(QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt6Widgets.so.6
#51 0x00007fffe9ba355a in QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt6Core.so.6
#52 0x00007ffff71b9c78 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt6Widgets.so.6
#53 0x00007ffff71beaaf in QApplication::notify(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt6Widgets.so.6
#54 0x00007fffe9ba6928 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt6Core.so.6
#55 0x00007ffff71b0aeb in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool, bool) ()
   at /usr/lib/x86_64-linux-gnu/libQt6Widgets.so.6
#56 0x00007ffff7229ddb in ??? () at /usr/lib/x86_64-linux-gnu/libQt6Widgets.so.6
#57 0x00007ffff722cf00 in ??? () at /usr/lib/x86_64-linux-gnu/libQt6Widgets.so.6
#58 0x00007ffff71b9c88 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt6Widgets.so.6
#59 0x00007fffe9ba6928 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt6Core.so.6
#60 0x00007fffea3f57c8 in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) () at /usr/lib/x86_64-linux-gnu/libQt6Gui.so.6
#61 0x00007fffea45417b in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/x86_64-linux-gnu/libQt6Gui.so.6
#62 0x00007fffe26af68e in ??? () at /usr/lib/x86_64-linux-gnu/libQt6XcbQpa.so.6
#63 0x00007fffe69015ee in ??? () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#64 0x00007fffe690497f in ??? () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#65 0x00007fffe6905110 in g_main_context_iteration () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#66 0x00007fffe9e04f48 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/x86_64-linux-gnu/libQt6Core.so.6
#67 0x00007fffe9bafe53 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/x86_64-linux-gnu/libQt6Core.so.6
#68 0x00007fffe9ba9701 in QCoreApplication::exec() () at /usr/lib/x86_64-linux-gnu/libQt6Core.so.6
#69 0x0000555555c84537 in main (argc=1, argv=0x7fffffffd998) at Core/main.cpp:772


Matthias Warmbold

unread,
Mar 2, 2026, 5:32:24 PM (2 days ago) Mar 2
to golden-cheetah-users
I'm back on my linux PC. I produced the crash again. The first crash happens after creating a new phase, wich is a camp phase named CultCamp. After that GC crashes every time, when I click on that phase. Yesterday night I removed the complete season and created a new one, but GC crashes every time when I wanted to choose that phase. Sometimes, but that's not reproduceable GC crashes also, when I want to choose another phase.

By the way, I'm stoked and excited by GC and the new feature of planing my training with GC, that's great! of course i must dig into how GC for example that tss calculates. Maybe I must lock to comparable workouts with my stryd, bike etc. with GC and maybe what WKO5 says to that workout.

Thank you for your work!
bye,
Matthias
StackTrace20260302.txt
Bildschirmfoto_2026-03-02_21-19-47geschwaerzt.png

Matthias Warmbold

unread,
Mar 2, 2026, 5:32:43 PM (2 days ago) Mar 2
to golden-cheetah-users
That stackTrace occurred after switching from triathlon to legacy while I'm watching the trend. Now after the start of GC and clicking on the Trend view GC crashes every time. legacy is still choosen

On Monday, March 2, 2026 at 6:34:56 PM UTC+1 Matthias Warmbold wrote:
StackTrace20260302_02.txt

Paul J

unread,
Mar 2, 2026, 6:39:09 PM (2 days ago) Mar 2
to golden-cheetah-users
I think this line is the problem, https://github.com/GoldenCheetah/GoldenCheetah/blob/b716c547cddcb0ee6970439a776577c181b47c34/src/Gui/LTMSidebar.cpp#L404

If the phase is dragged and dropped on its parent season, then the phase "which" is now at the top level of the tree, so allDateRanges is the parent, and its looking for the parent from the parent.

Joachim Kohlhammer

unread,
Mar 3, 2026, 11:57:12 AM (yesterday) Mar 3
to golden-cheetah-users
The drag-phase-crash is now prevented by additional safeguards, but we must discuss some business requirements: Currently all items in the season tree can be dragged (seasons and phases) but only dropped on season-level, not as child of a season. However this is where a phase belongs. When dropping a phase, it is one level too high without associated season and can lead to a crash.
The easiest fix is to only allow dragging seasons, not phases.

Additionally I removed the superclass QObject from DateRange. It had only one signal (changed) and I couldn't find any connection to this. Removing this inheritance should simplify the code (yes, only a little bit).

Can we agree on these two changes? If yes I will create a PR for testing and investigate Marcens crash.

marcen

unread,
Mar 3, 2026, 3:59:20 PM (yesterday) Mar 3
to golden-cheetah-users
I tried to minimize the error as much as possible on my end so that it might be easier to understand why GC crashes there.
Or whether it's just my system.

I installed the latest snapshot build from 2026/02/27 on Windows 11 and Arch Linux.

Under Windows, I don't get a crash when a new session is created.

Under Arch Linux, I had GC recreate the .GoldenCheetah folder.
And the following sequence:
1. Create a new user. Just enter the name, leave everything else at the default values.
2. Do not upload any activities.
3. Switch to the Trends view.
4. Create a session, e.g., with the name 01. Do not change the date.
5. GC should now crash.

It is possible that GC does not crash immediately during the first session created, but only during the second or third session created.

I have attached a new backtrace.
getName() .txt

Ale Martinez

unread,
Mar 3, 2026, 4:08:05 PM (yesterday) Mar 3
to golden-cheetah-users
El martes, 3 de marzo de 2026 a la(s) 1:57:12 p.m. UTC-3, tiefgara...@gmail.com escribió:
The drag-phase-crash is now prevented by additional safeguards, but we must discuss some business requirements: Currently all items in the season tree can be dragged (seasons and phases) but only dropped on season-level, not as child of a season. However this is where a phase belongs. When dropping a phase, it is one level too high without associated season and can lead to a crash.
The easiest fix is to only allow dragging seasons, not phases.

Additionally I removed the superclass QObject from DateRange. It had only one signal (changed) and I couldn't find any connection to this. Removing this inheritance should simplify the code (yes, only a little bit).

Can we agree on these two changes? If yes I will create a PR for testing and investigate Marcens crash.

Agree.

Joachim Kohlhammer

unread,
Mar 3, 2026, 5:04:37 PM (yesterday) Mar 3
to golden-cheetah-users

Ale Martinez

unread,
Mar 3, 2026, 7:28:11 PM (24 hours ago) Mar 3
to golden-cheetah-users

Joachim Kohlhammer

unread,
12:22 PM (7 hours ago) 12:22 PM
to golden-cheetah-users
Thanks for your good description and stacktrace. My latest commit (https://github.com/GoldenCheetah/GoldenCheetah/pull/4834/changes/c600a3537c634eed7651b63a82212f58c957571f) should fix this crash. Unfortunately I can't reproduce it on my machine (Debian) but with some logging-statements I could prove that context->season can contain a dangling pointer after creation of a season.
If this fix proves effective, I will search for the same pattern in other situations.

Ale Martinez

unread,
4:27 PM (3 hours ago) 4:27 PM
to golden-cheetah-users
El miércoles, 4 de marzo de 2026 a la(s) 2:22:43 p.m. UTC-3, tiefgara...@gmail.com escribió:
Thanks for your good description and stacktrace. My latest commit (https://github.com/GoldenCheetah/GoldenCheetah/pull/4834/changes/c600a3537c634eed7651b63a82212f58c957571f) should fix this crash. Unfortunately I can't reproduce it on my machine (Debian) but with some logging-statements I could prove that context->season can contain a dangling pointer after creation of a season.
If this fix proves effective, I will search for the same pattern in other situations.

That makes sense, good catch!

The AppImage including this fix is available from https://ci.appveyor.com/project/Joern-R/goldencheetah-knhd8/builds/53640105/job/3rp5uni1rqgbtuq0/artifacts, it would be interesting to confirm if it avoids the crash for the users who can reproduce it. 
Reply all
Reply to author
Forward
0 new messages