https://bugs.kde.org/show_bug.cgi?id=442245

            Bug ID: 442245
           Summary: Random crashes in KPat
           Product: kpat
           Version: unspecified
          Platform: Debian stable
                OS: Linux
            Status: REPORTED
          Keywords: drkonqi
          Severity: crash
          Priority: NOR
         Component: general
          Assignee: co...@kde.org
          Reporter: spikethehobbitm...@runbox.com
                CC: kde-games-b...@kde.org
  Target Milestone: ---

Application: kpat (21.8.0)

Qt Version: 5.15.2
Frameworks Version: 5.85.0
Operating System: Linux 5.10.0-8-amd64 x86_64
Windowing System: X11
Drkonqi Version: 5.21.5
Distribution: Debian GNU/Linux bookworm/sid

-- Information about the crash:
- What I was doing when the application crashed:

This crash occurred when starting a new game after playing for a while. I don't
know if it is related but I often get random display corruption where cards
don't render properly.

The crash can be reproduced sometimes.

-- Backtrace:
Application: KPatience (kpat), signal: Segmentation fault

[KCrash Handler]
#4  0x00007f1a51057425 in KSharedDataCache::Private::lock() const
(this=0x561e66cee2f0) at ./src/lib/caching/kshareddatacache.cpp:1195
#5  KSharedDataCache::Private::CacheLocker::cautiousLock()
(this=this@entry=0x7ffd3fe54b60) at ./src/lib/caching/kshareddatacache.cpp:1219
#6  0x00007f1a5105300e in
KSharedDataCache::Private::CacheLocker::CacheLocker(KSharedDataCache::Private
const*) (_d=<optimized out>, this=0x7ffd3fe54b60) at
./src/lib/caching/kshareddatacache.cpp:1269
#7  KSharedDataCache::find(QString const&, QByteArray*) const
(this=this@entry=0x561e66d3e030, key=...,
destination=destination@entry=0x7ffd3fe54c30) at
./src/lib/caching/kshareddatacache.cpp:1550
#8  0x00007f1a51561624 in
KSharedPixmapCacheMixin<KSharedDataCache>::findPixmap(QString const&, QPixmap*)
const (destination=0x561e66e1a298, key=..., this=0x561e66d3e020) at
/usr/include/KF5/KGuiAddons/kimagecache.h:138
#9  KAbstractCardDeckPrivate::requestPixmap(unsigned int, bool)
(this=0x561e678bbdd0, id=<optimized out>, faceUp=<optimized out>) at
./src/libkcardgame/kabstractcarddeck.cpp:205
#10 0x00007f1a51561935 in KAbstractCardDeck::cardPixmap(unsigned int, bool)
(this=<optimized out>, id=<optimized out>, faceUp=<optimized out>) at
./src/libkcardgame/kabstractcarddeck.cpp:516
#11 0x00007f1a5156383c in KCard::paint(QPainter*, QStyleOptionGraphicsItem
const*, QWidget*) (this=0x561e6797a3f0, painter=0x7ffd3fe552a0,
option=<optimized out>, widget=<optimized out>) at
./src/libkcardgame/kcard.cpp:319
#12 0x00007f1a50cbc99f in QGraphicsScenePrivate::draw(QGraphicsItem*,
QPainter*, QTransform const*, QTransform const*, QRegion*, QWidget*, double,
QTransform const*, bool, bool) (this=0x561e67a52360, item=<optimized out>,
painter=0x7ffd3fe552a0, viewTransform=0x7ffd3fe552f0, transformPtr=<optimized
out>, exposedRegion=0x561e66c2cfa0, widget=<optimized out>, opacity=<optimized
out>, effectTransform=<optimized out>, wasDirtyParentSceneTransform=<optimized
out>, drawItem=<optimized out>) at graphicsview/qgraphicsscene.cpp:4981
#13 0x00007f1a50cbd9c0 in
QGraphicsScenePrivate::drawSubtreeRecursive(QGraphicsItem*, QPainter*,
QTransform const*, QRegion*, QWidget*, double, QTransform const*)
(this=this@entry=0x561e67a52360, item=0x561e6797a400,
painter=painter@entry=0x7ffd3fe552a0,
viewTransform=viewTransform@entry=0x7ffd3fe552f0,
exposedRegion=exposedRegion@entry=0x561e66c2cfa0, widget=<optimized out>,
widget@entry=0x561e67902940, parentOpacity=parentOpacity@entry=1,
effectTransform=0x0) at graphicsview/qgraphicsscene.cpp:4873
#14 0x00007f1a50cbdfe2 in QGraphicsScenePrivate::drawItems(QPainter*,
QTransform const*, QRegion*, QWidget*) (this=this@entry=0x561e67a52360,
painter=painter@entry=0x7ffd3fe552a0,
viewTransform=viewTransform@entry=0x7ffd3fe552f0,
exposedRegion=exposedRegion@entry=0x561e66c2cfa0, widget=0x561e67902940) at
graphicsview/qgraphicsscene.cpp:4735
#15 0x00007f1a50ce15b2 in QGraphicsView::paintEvent(QPaintEvent*)
(this=<optimized out>, event=<optimized out>) at
../../include/QtWidgets/../../src/widgets/graphicsview/qgraphicsscene.h:307
#16 0x00007f1a509dafae in QWidget::event(QEvent*)
(this=this@entry=0x561e670c6b00, event=event@entry=0x7ffd3fe55640) at
kernel/qwidget.cpp:9019
#17 0x00007f1a50a832fe in QFrame::event(QEvent*) (this=0x561e670c6b00,
e=0x7ffd3fe55640) at widgets/qframe.cpp:550
#18 0x00007f1a4fe85d33 in
QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*)
(event=<optimized out>, receiver=<optimized out>) at
kernel/qcoreapplication.cpp:1189
#19 QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*)
(receiver=receiver@entry=0x561e67902940, event=event@entry=0x7ffd3fe55640) at
kernel/qcoreapplication.cpp:1178
#20 0x00007f1a5099b14e in QApplicationPrivate::notify_helper(QObject*, QEvent*)
(this=<optimized out>, receiver=0x561e67902940, e=0x7ffd3fe55640) at
kernel/qapplication.cpp:3626
#21 0x00007f1a4fe85fca in QCoreApplication::notifyInternal2(QObject*, QEvent*)
(receiver=0x561e67902940, event=0x7ffd3fe55640) at
kernel/qcoreapplication.cpp:1063
#22 0x00007f1a509d3116 in QWidgetPrivate::sendPaintEvent(QRegion const&)
(this=this@entry=0x561e66bb2e90, toBePainted=...) at kernel/qwidget.cpp:5467
#23 0x00007f1a509d3962 in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion
const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*,
QWidgetRepaintManager*) (this=0x561e66bb2e90, pdev=0x561e67b2d830, rgn=...,
offset=<optimized out>, flags=..., sharedPainter=<optimized out>,
repaintManager=<optimized out>) at kernel/qwidget.cpp:5417
#24 0x00007f1a509d4cb3 in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*,
QList<QObject*> const&, int, QRegion const&, QPoint const&,
QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*)
(this=this@entry=0x561e66c2cae0, pdev=pdev@entry=0x561e67b2d830, siblings=...,
index=<optimized out>, rgn=..., offset=..., flags=..., sharedPainter=0x0,
repaintManager=0x561e679eb030) at kernel/qwidget.cpp:5598
#25 0x00007f1a509d367c in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion
const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*,
QWidgetRepaintManager*) (this=0x561e66c2cae0, pdev=0x561e67b2d830, rgn=...,
offset=<optimized out>, flags=..., sharedPainter=<optimized out>,
repaintManager=<optimized out>) at kernel/qwidget.cpp:5458
#26 0x00007f1a509d4cb3 in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*,
QList<QObject*> const&, int, QRegion const&, QPoint const&,
QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*)
(this=0x561e66df3200, pdev=0x561e67b2d830, siblings=<optimized out>,
index=<optimized out>, rgn=..., offset=..., flags=..., sharedPainter=0x0,
repaintManager=0x561e679eb030) at kernel/qwidget.cpp:5598
#27 0x00007f1a509d4ad2 in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*,
QList<QObject*> const&, int, QRegion const&, QPoint const&,
QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*)
(this=0x561e66df3200, pdev=0x561e67b2d830, siblings=<optimized out>, index=9,
rgn=..., offset=..., flags=..., sharedPainter=0x0,
repaintManager=0x561e679eb030) at kernel/qwidget.cpp:5584
#28 0x00007f1a509d4ad2 in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*,
QList<QObject*> const&, int, QRegion const&, QPoint const&,
QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*)
(this=this@entry=0x561e66df3200, pdev=pdev@entry=0x561e67b2d830, siblings=...,
index=17, rgn=..., offset=..., flags=..., sharedPainter=0x0,
repaintManager=0x561e679eb030) at kernel/qwidget.cpp:5584
#29 0x00007f1a509d367c in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion
const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*,
QWidgetRepaintManager*) (this=this@entry=0x561e66df3200, pdev=0x561e67b2d830,
rgn=..., offset=..., flags=..., flags@entry=...,
sharedPainter=sharedPainter@entry=0x0, repaintManager=<optimized out>) at
kernel/qwidget.cpp:5458
#30 0x00007f1a509ab86a in QWidgetRepaintManager::paintAndFlush()
(this=<optimized out>) at kernel/qwidgetrepaintmanager.cpp:1009
#31 0x00007f1a509db6d7 in QWidget::event(QEvent*) (this=0x561e66bf0200,
event=0x7f1a44008e00) at kernel/qwidget.cpp:8964
#32 0x00007f1a514e0b57 in KXmlGuiWindow::event(QEvent*) () at
/usr/lib/x86_64-linux-gnu/libKF5XmlGui.so.5
#33 0x00007f1a5099b15f in QApplicationPrivate::notify_helper(QObject*, QEvent*)
(this=<optimized out>, receiver=0x561e66bf0200, e=0x7f1a44008e00) at
kernel/qapplication.cpp:3632
#34 0x00007f1a4fe85fca in QCoreApplication::notifyInternal2(QObject*, QEvent*)
(receiver=0x561e66bf0200, event=0x7f1a44008e00) at
kernel/qcoreapplication.cpp:1063
#35 0x00007f1a4fe88a01 in QCoreApplicationPrivate::sendPostedEvents(QObject*,
int, QThreadData*) (receiver=0x561e66bf0200, event_type=77,
data=0x561e669fc300) at kernel/qcoreapplication.cpp:1817
#36 0x00007f1a50cad0c3 in QGraphicsViewPrivate::dispatchPendingUpdateRequests()
(this=<optimized out>, this=<optimized out>) at
../../include/QtWidgets/5.15.2/QtWidgets/private/../../../../../src/widgets/graphicsview/qgraphicsview_p.h:191
#37 QGraphicsViewPrivate::dispatchPendingUpdateRequests() (this=0x561e66c2cae0)
at
../../include/QtWidgets/5.15.2/QtWidgets/private/../../../../../src/widgets/graphicsview/qgraphicsview_p.h:186
#38 QGraphicsScenePrivate::_q_emitUpdated() (this=0x561e67a52360) at
graphicsview/qgraphicsscene.cpp:383
#39 0x00007f1a4feb1ff1 in QObject::event(QEvent*) (this=0x561e66e70480,
e=0x561e66fb08c0) at kernel/qobject.cpp:1314
#40 0x00007f1a5099b15f in QApplicationPrivate::notify_helper(QObject*, QEvent*)
(this=<optimized out>, receiver=0x561e66e70480, e=0x561e66fb08c0) at
kernel/qapplication.cpp:3632
#41 0x00007f1a4fe85fca in QCoreApplication::notifyInternal2(QObject*, QEvent*)
(receiver=0x561e66e70480, event=0x561e66fb08c0) at
kernel/qcoreapplication.cpp:1063
#42 0x00007f1a4fe88a01 in QCoreApplicationPrivate::sendPostedEvents(QObject*,
int, QThreadData*) (receiver=0x0, event_type=0, data=0x561e669fc300) at
kernel/qcoreapplication.cpp:1817
#43 0x00007f1a4fedde93 in postEventSourceDispatch(GSource*, GSourceFunc,
gpointer) (s=0x561e66be1400) at kernel/qeventdispatcher_glib.cpp:277
#44 0x00007f1a4d9c385b in g_main_dispatch (context=0x7f1a44005000) at
../../../glib/gmain.c:3337
#45 g_main_context_dispatch (context=0x7f1a44005000) at
../../../glib/gmain.c:4055
#46 0x00007f1a4d9c3b08 in g_main_context_iterate
(context=context@entry=0x7f1a44005000, block=block@entry=1,
dispatch=dispatch@entry=1, self=<optimized out>) at ../../../glib/gmain.c:4131
#47 0x00007f1a4d9c3bbf in g_main_context_iteration (context=0x7f1a44005000,
may_block=may_block@entry=1) at ../../../glib/gmain.c:4196
#48 0x00007f1a4fedd51f in
QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)
(this=0x561e66ba0800, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#49 0x00007f1a4fe8498b in
QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>)
(this=this@entry=0x7ffd3fe568d0, flags=..., flags@entry=...) at
../../include/QtCore/../../src/corelib/global/qflags.h:69
#50 0x00007f1a4fe8cc00 in QCoreApplication::exec() () at
../../include/QtCore/../../src/corelib/global/qflags.h:121
#51 0x0000561e64b854c6 in main(int, char**) (argc=<optimized out>,
argv=<optimized out>) at ./src/main.cpp:352
[Inferior 1 (process 44249) detached]

Possible duplicates by query: bug 284821.

Reported using DrKonqi

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to