Bug 269781 - KJumpingCube crashes when it is closed after playing several times.
Summary: KJumpingCube crashes when it is closed after playing several times.
Status: RESOLVED FIXED
Alias: None
Product: kjumpingcube
Classification: Applications
Component: general (show other bugs)
Version: 1.2
Platform: openSUSE Linux
: NOR normal
Target Milestone: ---
Assignee: Ian Wadham
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-03-30 20:11 UTC by Pether Hubert
Modified: 2012-06-24 02:40 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In: 1.2 (KDE SC 4.9)


Attachments
Crash report from crash manager (4.04 KB, application/octet-stream)
2011-03-30 20:12 UTC, Pether Hubert
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Pether Hubert 2011-03-30 20:11:10 UTC
Version:           1.2 (using KDE 4.4.4) 
OS:                Linux

In the last weeks, KJumpingCube crashes when it is closed after playing several times, i.e. it is possible to play without problems, but when I then want to close it, the KDE crash box is opened. I cannot remember whether this is always the case or only sometimes, but in the last two or three weeks, I did observe this several times.

Reproducible: Sometimes

Steps to Reproduce:
Play KJumpingCube and then close the program.
Comment 1 Pether Hubert 2011-03-30 20:12:18 UTC
Created attachment 58466 [details]
Crash report from crash manager
Comment 2 Ian Wadham 2011-03-30 23:46:27 UTC
When I try to open the attachment I get a message: "You have chosen to open kjumpingcube-20110330.kcrash which is a BIN file ..." and my only options are Save File or Cancel.  What should I do with this file?  Usually crash reports on bug reports are displayed as human-readable text.
Comment 3 Pether Hubert 2011-03-31 18:37:19 UTC
Ian Wadham <iandw.au@gmail.com> writes:
> --- Comment #2 from Ian Wadham <iandw au gmail com>  2011-03-30 23:46:27 ---
> When I try to open the attachment I get a message: "You have chosen to
> open kjumpingcube-20110330.kcrash which is a BIN file ..." and my only
> options are Save File or Cancel.  What should I do with this file?
> Usually crash reports on bug reports are displayed as human-readable
> text.

Sorry, it seems I have chosen the wrong format, it should be a text
file.  I will attach it to this mail, if that helps you.
Comment 4 Christoph Feck 2011-04-01 02:55:34 UTC
Pasting attachment inline

Application: kjumpingcube (1.2)
KDE Platform Version: 4.4.4 (KDE 4.4.4) "release 3"
Qt Version: 4.6.3
Operating System: Linux 2.6.34.7-0.7-desktop i686
Distribution: "openSUSE 11.3 (i586)"

-- Information about the crash:
In the last weeks, KJumpingCube crashes when it is closed after playing several times, i.e. it is possible to play without problems, but when I then want to close it, the KDE crash box is opened. I cannot remember whether this is always the case or only sometimes, but in the last two or three weeks, I did observe this several times.

The crash can be reproduced some of the time.

 -- Backtrace:
Application: KJumpingCube (kjumpingcube), signal: Segmentation fault
[KCrash Handler]
#6  0xb6d28e4e in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4
#7  0x08056247 in KCubeBoxWidget::stoppedThinking (this=0x80bad80) at /usr/src/debug/kdegames-4.4.4/build/kjumpingcube/kcubeboxwidget.moc:165
#8  0x08056330 in KCubeBoxWidget::checkComputerplayer (this=0x80bad80, player=CubeBoxBase<KCubeWidget>::One) at /usr/src/debug/kdegames-4.4.4/kjumpingcube/kcubeboxwidget.cpp:390
#9  0x0805685c in KCubeBoxWidget::reset (this=0x80bad80) at /usr/src/debug/kdegames-4.4.4/kjumpingcube/kcubeboxwidget.cpp:180
#10 0x080526ba in KJumpingCube::showWinner (this=0x812cbb0, player=2) at /usr/src/debug/kdegames-4.4.4/kjumpingcube/kjumpingcube.cpp:264
#11 0x08052c45 in KJumpingCube::qt_metacall (this=0x812cbb0, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0xbf8e98a8)
    at /usr/src/debug/kdegames-4.4.4/build/kjumpingcube/kjumpingcube.moc:102
#12 0xb6d19efd in QMetaObject::metacall(QObject*, QMetaObject::Call, int, void**) () from /usr/lib/libQtCore.so.4
#13 0xb6d28fe8 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4
#14 0x080560f7 in KCubeBoxWidget::playerWon (this=0x80bad80, _t1=2) at /usr/src/debug/kdegames-4.4.4/build/kjumpingcube/kcubeboxwidget.moc:141
#15 0x080565bf in KCubeBoxWidget::nextLoopStep (this=0x80bad80) at /usr/src/debug/kdegames-4.4.4/kjumpingcube/kcubeboxwidget.cpp:772
#16 0x08059550 in KCubeBoxWidget::qt_metacall (this=0x80bad80, _c=QMetaObject::InvokeMetaMethod, _id=13, _a=0xbf8e999c) at /usr/src/debug/kdegames-4.4.4/build/kjumpingcube/kcubeboxwidget.moc:112
#17 0xb6d19efd in QMetaObject::metacall(QObject*, QMetaObject::Call, int, void**) () from /usr/lib/libQtCore.so.4
#18 0xb6d28fe8 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4
#19 0xb6d75a35 in QTimer::timeout() () from /usr/lib/libQtCore.so.4
#20 0xb6d2e8e6 in QTimer::timerEvent(QTimerEvent*) () from /usr/lib/libQtCore.so.4
#21 0xb6d26774 in QObject::event(QEvent*) () from /usr/lib/libQtCore.so.4
#22 0xb6268c64 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
#23 0xb6270bf7 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
#24 0xb71b49d1 in KApplication::notify(QObject*, QEvent*) () from /usr/lib/libkdeui.so.5
#25 0xb6d13e0e in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/libQtCore.so.4
#26 0xb6d4270e in ?? () from /usr/lib/libQtCore.so.4
#27 0xb6d3f675 in ?? () from /usr/lib/libQtCore.so.4
#28 0xb57f3b49 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#29 0xb57f4350 in ?? () from /usr/lib/libglib-2.0.so.0
#30 0xb57f460e in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#31 0xb6d3fd4b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#32 0xb631919a in ?? () from /usr/lib/libQtGui.so.4
#33 0xb6d1311d in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#34 0xb6d13319 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#35 0xb6d17c70 in QCoreApplication::exec() () from /usr/lib/libQtCore.so.4
#36 0xb6266164 in QApplication::exec() () from /usr/lib/libQtGui.so.4
#37 0x0805b2f0 in main (argc=) at /usr/src/debug/kdegames-4.4.4/kjumpingcube/main.cpp:60

An https://bugs.kde.org berichten
Comment 5 Pether Hubert 2012-01-18 22:45:43 UTC
I found out that the bug occurs when one is playing against the computer and the computer takes the first move. After the end of a game, I get the message box with the result, and when I click OK, a new game starts.  When I then close the program while the computer player is "thinking" about its first move, then I get this crash.
Comment 6 Ian Wadham 2012-01-20 22:25:23 UTC
Thanks for the hint, Pether. It's time to clear this one up.
Comment 7 Ian Wadham 2012-06-24 02:25:32 UTC
SVN commit 1302625 by ianw:

Related: bug 269781 BUG: bug 301568 BUG: bug 302151 Fix several crashes by making sure all game activity stops before accepting close().

 M  +26 -2     kcubeboxwidget.cpp  
 M  +10 -1     kcubeboxwidget.h  
 M  +4 -1      kcubewidget.cpp  
 M  +1 -1      kcubewidget.h  
 M  +10 -0     kjumpingcube.cpp  
 M  +4 -0      kjumpingcube.h  


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