Bug 274127 - Kpatience crashes
Summary: Kpatience crashes
Status: RESOLVED FIXED
Alias: None
Product: kpat
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: Ubuntu Linux
: NOR crash
Target Milestone: ---
Assignee: Stephan Kulow
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-05-25 19:17 UTC by Ralph Janke
Modified: 2011-11-07 04:27 UTC (History)
2 users (show)

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 Ralph Janke 2011-05-25 19:17:53 UTC
Application: kpat (3.5.1)
KDE Platform Version: 4.6.2 (4.6.2)
Qt Version: 4.7.2
Operating System: Linux 2.6.38-8-generic i686
Distribution: Ubuntu 11.04

-- Information about the crash:
- What I was doing when the application crashed:
Used the gypsy formation. Let it play in demo mode. In the middle of running through the demo mode, the whole application crashed.

-- Backtrace:
Application: KPatience (kpat), signal: Segmentation fault
[Current thread is 1 (Thread 0xb78b8710 (LWP 2205))]

Thread 2 (Thread 0xb4601b70 (LWP 2247)):
#0  0x00d4ad41 in clock_gettime (clock_id=1, tp=0xb4601000) at ../sysdeps/unix/clock_gettime.c:116
#1  0x00764dd8 in do_gettime () at tools/qelapsedtimer_unix.cpp:123
#2  qt_gettime () at tools/qelapsedtimer_unix.cpp:140
#3  0x008314f2 in updateCurrentTime (this=0x98c54a4, tm=...) at kernel/qeventdispatcher_unix.cpp:339
#4  QTimerInfoList::timerWait (this=0x98c54a4, tm=...) at kernel/qeventdispatcher_unix.cpp:442
#5  0x0082fd32 in timerSourcePrepareHelper (src=<value optimized out>, timeout=0xb46010dc) at kernel/qeventdispatcher_glib.cpp:136
#6  0x0082fdcd in timerSourcePrepare (source=0x98c5470, timeout=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:169
#7  0x048cafd4 in g_main_context_prepare () from /lib/i386-linux-gnu/libglib-2.0.so.0
#8  0x048cbe63 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#9  0x048cc524 in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#10 0x00830577 in QEventDispatcherGlib::processEvents (this=0x98be7e8, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#11 0x00802289 in QEventLoop::processEvents (this=0xb4601290, flags=...) at kernel/qeventloop.cpp:149
#12 0x00802522 in QEventLoop::exec (this=0xb4601290, flags=...) at kernel/qeventloop.cpp:201
#13 0x0070c2a0 in QThread::exec (this=0x98c32d0) at thread/qthread.cpp:492
#14 0x007e3fdb in QInotifyFileSystemWatcherEngine::run (this=0x98c32d0) at io/qfilesystemwatcher_inotify.cpp:248
#15 0x0070eda2 in QThreadPrivate::start (arg=0x98c32d0) at thread/qthread_unix.cpp:320
#16 0x00986e99 in start_thread (arg=0xb4601b70) at pthread_create.c:304
#17 0x00c0873e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130

Thread 1 (Thread 0xb78b8710 (LWP 2205)):
[KCrash Handler]
#7  0x009b76ba in KCardPile::top (this=0x0) at ../../../kpat/libkcardgame/kcardpile.cpp:210
#8  0x08061d3c in DealerScene::demo (this=0x99385a0) at ../../kpat/dealer.cpp:1411
#9  0x080651a2 in DealerScene::qt_metacall (this=0x99385a0, _c=QMetaObject::InvokeMetaMethod, _id=31, _a=0xbf9eceac) at ./moc_dealer.cpp:159
#10 0x080832bf in Gypsy::qt_metacall (this=0x99385a0, _c=QMetaObject::InvokeMetaMethod, _id=64, _a=0xbf9eceac) at ./gypsy.moc:67
#11 0x008096ba in QMetaObject::metacall (object=0x99385a0, cl=QMetaObject::InvokeMetaMethod, idx=64, argv=0xbf9eceac) at kernel/qmetaobject.cpp:237
#12 0x008194ff in QMetaObject::activate (sender=0x9977ca0, m=0x93e5a4, local_signal_index=0, argv=0x0) at kernel/qobject.cpp:3287
#13 0x008662f7 in QTimer::timeout (this=0x9977ca0) at .moc/release-shared/moc_qtimer.cpp:134
#14 0x0081f3ee in QTimer::timerEvent (this=0x9977ca0, e=0xbf9ed3cc) at kernel/qtimer.cpp:271
#15 0x00818214 in QObject::event (this=0x9977ca0, e=0xbf9ed3cc) at kernel/qobject.cpp:1190
#16 0x0692bd24 in QApplicationPrivate::notify_helper (this=0x96ddd48, receiver=0x9977ca0, e=0xbf9ed3cc) at kernel/qapplication.cpp:4462
#17 0x069308ce in QApplication::notify (this=0xbf9ed744, receiver=0x9977ca0, e=0xbf9ed3cc) at kernel/qapplication.cpp:3862
#18 0x011893ca in KApplication::notify (this=0xbf9ed744, receiver=0x9977ca0, event=0xbf9ed3cc) at ../../kdeui/kernel/kapplication.cpp:311
#19 0x008030bb in QCoreApplication::notifyInternal (this=0xbf9ed744, receiver=0x9977ca0, event=0xbf9ed3cc) at kernel/qcoreapplication.cpp:731
#20 0x008331e4 in sendEvent (this=0x96e8f74) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#21 QTimerInfoList::activateTimers (this=0x96e8f74) at kernel/qeventdispatcher_unix.cpp:604
#22 0x0082fe27 in timerSourceDispatch (source=0x96e8fa8) at kernel/qeventdispatcher_glib.cpp:184
#23 idleTimerSourceDispatch (source=0x96e8fa8) at kernel/qeventdispatcher_glib.cpp:231
#24 0x048cbaa8 in g_main_context_dispatch () from /lib/i386-linux-gnu/libglib-2.0.so.0
#25 0x048cc270 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#26 0x048cc524 in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#27 0x0083053c in QEventDispatcherGlib::processEvents (this=0x9697aa8, flags=...) at kernel/qeventdispatcher_glib.cpp:422
#28 0x069df775 in QGuiEventDispatcherGlib::processEvents (this=0x9697aa8, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#29 0x00802289 in QEventLoop::processEvents (this=0xbf9ed664, flags=...) at kernel/qeventloop.cpp:149
#30 0x00802522 in QEventLoop::exec (this=0xbf9ed664, flags=...) at kernel/qeventloop.cpp:201
#31 0x00806ecc in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1008
#32 0x069298e7 in QApplication::exec () at kernel/qapplication.cpp:3736
#33 0x0805b6f6 in main (argc=0, argv=0x0) at ../../kpat/main.cpp:286

Reported using DrKonqi
Comment 1 Carl Symons 2011-09-11 17:15:18 UTC
kubuntu 11.04; kpatience 4.7.0 crashes here too. Don't have any debug information. Gypsy seems to be the culprit. Everything else works fine.
Comment 2 Parker Coates 2011-11-07 04:27:12 UTC
SVN commit 1262923 by coates:

Remove a bunch of cruft from DealerScene::demo().

This code was doing a bunch of things suboptimally. It didn't use
KCardPile::topCardsDownTo(). It handled a bunch of animation stuff
that should now be handled automatically. It asserted pointers after
having used them, which is pointless.

While I don't know what was causing the crash in bug 274127, I do know
it can't happen again with the new code.

BUG:274127

 M  +24 -41    dealer.cpp  
 M  +1 -1      hint.h  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1262923