Bug 233424

Summary: Parley crashed when stopping Written practice.
Product: [Applications] parley Reporter: Philip Muškovac <yofel>
Component: generalAssignee: parley bug tracker <parley-bugs-null>
Status: RESOLVED DUPLICATE    
Severity: crash CC: gladhorn, larsreinecke, woeteam
Priority: NOR    
Version: 0.9.3   
Target Milestone: ---   
Platform: Ubuntu   
OS: Linux   
Latest Commit: Version Fixed In:
Attachments: New crash information added by DrKonqi

Description Philip Muškovac 2010-04-05 21:56:17 UTC
Application: parley (0.9.3)
KDE Platform Version: 4.4.2 (KDE 4.4.2)
Qt Version: 4.6.2
Operating System: Linux 2.6.32-19-generic x86_64
Distribution: Ubuntu lucid (development branch)

-- Information about the crash:
Open Parley, create a new session, use the defaults an click ok. In the properties just click ok again. Then without adding something start the practice, you'll get an error:
"The vocabulary document contains no entries that can be used for the chosen type of practice." Click ok. A window with the title "Written Practice" will pop up. Click on Stop Practice -> Crash.

The crash can be reproduced every time.

 -- Backtrace:
Application: Parley (parley), signal: Floating point exception
[KCrash Handler]
#5  0x00000000004994dd in PracticeSummaryDialog (this=0x7fff0244cbb0, testEntryManager=0x7fff0244ccf0, parent=<value optimized out>) at ../../../parley/src/practiceold/practicesummarydialog.cpp:32
#6  0x000000000046c02e in VocabularyPractice::startPractice (this=0x7fff0244cce0) at ../../../parley/src/practiceold/vocabularypractice.cpp:79
#7  0x00000000004d477e in ParleyMainWindow::startPractice (this=0x2889e80) at ../../../parley/src/parleymainwindow.cpp:217
#8  0x00000000004d6f60 in ParleyMainWindow::qt_metacall (this=0x2889e80, _c=QMetaObject::InvokeMetaMethod, _id=0, _a=0x7fff0244ceb0) at ./parleymainwindow.moc:114
#9  0x00007f4f59e7ae3f in QMetaObject::activate (sender=0x2d9c8c0, m=<value optimized out>, local_signal_index=<value optimized out>, argv=0x0) at kernel/qobject.cpp:3293
#10 0x00007f4f57a63032 in QAction::triggered (this=0x412a650, _t1=false) at .moc/release-shared/moc_qaction.cpp:263
#11 0x00007f4f57a650ab in QAction::activate (this=0x2d9c8c0, event=<value optimized out>) at kernel/qaction.cpp:1255
#12 0x00007f4f57e1f57a in QAbstractButtonPrivate::click (this=0x40f8e30) at widgets/qabstractbutton.cpp:528
#13 0x00007f4f57e1f82c in QAbstractButton::mouseReleaseEvent (this=0x3e65ca0, e=0x7fff0244d810) at widgets/qabstractbutton.cpp:1121
#14 0x00007f4f57eeb77a in QToolButton::mouseReleaseEvent (this=0x412a650, e=0x7fff0244c920) at widgets/qtoolbutton.cpp:721
#15 0x00007f4f57abf582 in QWidget::event (this=0x3e65ca0, event=0x7fff0244d810) at kernel/qwidget.cpp:7998
#16 0x00007f4f57a6922c in QApplicationPrivate::notify_helper (this=0x25ccfc0, receiver=0x3e65ca0, e=0x7fff0244d810) at kernel/qapplication.cpp:4300
#17 0x00007f4f57a6fecb in QApplication::notify (this=0x7fff0244e510, receiver=0x3e65ca0, e=0x7fff0244d810) at kernel/qapplication.cpp:3865
#18 0x00007f4f58e8e526 in KApplication::notify (this=0x7fff0244e510, receiver=0x3e65ca0, event=0x7fff0244d810) at ../../kdeui/kernel/kapplication.cpp:302
#19 0x00007f4f59e6806c in QCoreApplication::notifyInternal (this=0x7fff0244e510, receiver=0x3e65ca0, event=0x7fff0244d810) at kernel/qcoreapplication.cpp:704
#20 0x00007f4f57a6f0ae in QCoreApplication::sendEvent (receiver=0x3e65ca0, event=0x7fff0244d810, alienWidget=0x3e65ca0, nativeWidget=0x4037040, buttonDown=<value optimized out>, 
    lastMouseReceiver=<value optimized out>, spontaneous=true) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#21 QApplicationPrivate::sendMouseEvent (receiver=0x3e65ca0, event=0x7fff0244d810, alienWidget=0x3e65ca0, nativeWidget=0x4037040, buttonDown=<value optimized out>, 
    lastMouseReceiver=<value optimized out>, spontaneous=true) at kernel/qapplication.cpp:2965
#22 0x00007f4f57aeef65 in QETWidget::translateMouseEvent (this=0x4037040, event=<value optimized out>) at kernel/qapplication_x11.cpp:4368
#23 0x00007f4f57aed8ac in QApplication::x11ProcessEvent (this=<value optimized out>, event=0x7fff0244e130) at kernel/qapplication_x11.cpp:3501
#24 0x00007f4f57b19732 in x11EventSourceDispatch (s=0x25d0d10, callback=<value optimized out>, user_data=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:146
#25 0x00007f4f53da58c2 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
#26 0x00007f4f53da9748 in ?? () from /lib/libglib-2.0.so.0
#27 0x00007f4f53da98fc in g_main_context_iteration () from /lib/libglib-2.0.so.0
#28 0x00007f4f59e91513 in QEventDispatcherGlib::processEvents (this=0x25b0380, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:412
#29 0x00007f4f57b1931e in QGuiEventDispatcherGlib::processEvents (this=0x412a650, flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:204
#30 0x00007f4f59e66992 in QEventLoop::processEvents (this=<value optimized out>, flags=) at kernel/qeventloop.cpp:149
#31 0x00007f4f59e66d6c in QEventLoop::exec (this=0x7fff0244e460, flags=) at kernel/qeventloop.cpp:201
#32 0x00007f4f59e6aaab in QCoreApplication::exec () at kernel/qcoreapplication.cpp:981
#33 0x00000000004d7cc2 in main (argc=<value optimized out>, argv=<value optimized out>) at ../../../parley/src/main.cpp:139

Reported using DrKonqi
Comment 1 Nick Basmanov 2010-05-14 16:34:29 UTC
Created attachment 43586 [details]
New crash information added by DrKonqi

Open Parley, create a new session, use the defaults an click ok. In the properties just click ok again. Then without adding something start the practice, you'll get an error:
"The vocabulary document contains no entries that can be used for the chosen type of practice." Click ok. A window with the title "Written Practice" will pop up. Click on Stop Practice -> Crash.
Comment 2 alopex 2010-07-30 15:02:30 UTC
I can confirm this bug using Parley 0.9.3 and KDE 4.4.2 in Ubuntu 10.04 Lucid Lynx (i.e. GNOME desktop environment). 
In my case, I block entries which are at a certain level or have been practiced in the near past. Sometimes that leads to starting a practice without any entries. The behaviour is then the same as described above: a window pops up, requesting a modification since there aren't any entries for the chosen practice. If you ignore that, the practise starts anyway without any entries. Aborting that practice will lead Parley to crash. 
Now in my opinion the practice shouldn't start in the first place, if there aren't any entries for the chosen practice.
Comment 3 Christoph Feck 2012-02-10 18:16:01 UTC

*** This bug has been marked as a duplicate of bug 267392 ***