https://bugs.kde.org/show_bug.cgi?id=426705
--- Comment #3 from Christian Krippendorf <cerebro...@gmx.net> --- Hello @all, while working on that bug, I found another which might explain that wrong matching tiles will be added. It is due to wrong countering which has been changed in the past. Therefore it will work with current versions an saving and loading (wrong save and wrong read). This needs to be fixed. And I will have a look, where it might be fixed best. The segfault is a little bit harder. It seem to be because of QByteArray and its detach function. This doesn't seem to be an out of bounds and I cannot find the reason for it. Maybe someone else has an idea. Function calling stack while debugging: ----- std::__atomic_base<int>::load(std::memory_order __m, const std::__atomic_base<int> * const this) (/usr/include/c++/12/bits/atomic_base.h:488) QAtomicOps<int>::loadRelaxed<int>( _q_value) (/usr/include/qt5/QtCore/qatomic_cxx11.h:239) QBasicAtomicInteger<int>::loadRelaxed(const QBasicAtomicInteger<int> * const this) (/usr/include/qt5/QtCore/qbasicatomic.h:107) QtPrivate::RefCount::isShared(const QtPrivate::RefCount * const this) (/usr/include/qt5/QtCore/qrefcount.h:101) QByteArray::detach(QByteArray * const this) (/usr/include/qt5/QtCore/qbytearray.h:521) QByteArray::operator[](QByteArray * const this, int i) (/usr/include/qt5/QtCore/qbytearray.h:627) GameData::setBoardData(GameData * const this, short z, short y, short x, UCHAR value) (/home/christian/Programmierung/kde/src/kmahjongg/src/gamedata.cpp:103) GameData::putTile(GameData * const this, short z, short y, short x, UCHAR f) (/home/christian/Programmierung/kde/src/kmahjongg/src/gamedata.cpp:52) GameView::addItem(GameView * const this, POSITION & stItemPos, bool updateImage, bool updateOrder, bool updatePosition) (/home/christian/Programmierung/kde/src/kmahjongg/src/gameview.cpp:625) GameView::addItemAndUpdate(GameView * const this, POSITION & stItemPos) (/home/christian/Programmierung/kde/src/kmahjongg/src/gameview.cpp:631) GameView::undo(GameView * const this) (/home/christian/Programmierung/kde/src/kmahjongg/src/gameview.cpp:147) KMahjongg::undo(KMahjongg * const this) (/home/christian/Programmierung/kde/src/kmahjongg/src/kmahjongg.cpp:246) QtPrivate::FunctorCall<QtPrivate::IndexesList<>, QtPrivate::List<>, void, void (KMahjongg::*)()>::call(void (KMahjongg::*)(), KMahjongg*, void**)(void (KMahjongg::*)(KMahjongg * const) f, KMahjongg * o, void ** arg) (/usr/include/qt5/QtCore/qobjectdefs_impl.h:152) QtPrivate::FunctionPointer<void (KMahjongg::*)()>::call<QtPrivate::List<>, void>(void (KMahjongg::*)(), KMahjongg*, void**)(QtPrivate::FunctionPointer<void (KMahjongg::*)()>::Function f, KMahjongg * o, void ** arg) (/usr/include/qt5/QtCore/qobjectdefs_impl.h:185) QtPrivate::QSlotObject<void (KMahjongg::*)(), QtPrivate::List<>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*)(int which, QtPrivate::QSlotObjectBase * this_, QObject * r, void ** a, bool * ret) (/usr/include/qt5/QtCore/qobjectdefs_impl.h:418) libQt5Core.so.5![Unknown/Just-In-Time compiled code] (Unbekannte Quelle:0) libQt5Widgets.so.5!QAction::triggered(bool) (Unbekannte Quelle:0) libQt5Widgets.so.5!QAction::activate(QAction::ActionEvent) (Unbekannte Quelle:0) libQt5Widgets.so.5![Unknown/Just-In-Time compiled code] (Unbekannte Quelle:0) libQt5Widgets.so.5!QAbstractButton::mouseReleaseEvent(QMouseEvent*) (Unbekannte Quelle:0) Thank you all in advance for investing your time and for your help in making KDE applications even better. Greetings from Christian -- You are receiving this mail because: You are watching all bug changes.