Bug 227815 - parley: Segmentation fault when switching between list view and start exercise dialog
Summary: parley: Segmentation fault when switching between list view and start exercis...
Status: RESOLVED FIXED
Alias: None
Product: parley
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: Debian testing Unspecified
: NOR crash
Target Milestone: ---
Assignee: Parley Developers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-02-20 15:00 UTC by Eckhart Wörner
Modified: 2010-02-20 23:42 UTC (History)
0 users

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 Eckhart Wörner 2010-02-20 15:00:05 UTC
Version:            (using KDE 4.3.4)
Installed from:    Debian testing/unstable Packages

This bug has been forwarded from http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=562955

Howto produce the Segfault:

1. Start parley and install any vocabulary. If you have already a vocabulary installed this is fine too.

2. Open a collection for editing by pressing the "Edit" button behind a collection in the list "Last Opened Collections". The "Last Opened Collections" list is displayed in the main Window.

3. Leave the edit mode by entering File->close (<ctrl>+w)

4. Start an exercise by pressing the "Practice" button behind a collection in the list "Last Opened Collections".

5. In the "start practice" dialog just press "cancel".

6. Back in the main window try again to open the edit view by pressing the "Edit" button (step 2). You will get the Segfault.

Here is the crash dump from KDE crash manager.

--------------------------

Application: Parley (parley), signal: Segmentation fault
Using host libthread_db library "/lib/i686/cmov/libthread_db.so.1".
[Current thread is 0 (LWP 21055)]

Thread 2 (Thread 0xb390fb70 (LWP 21056)):
#0  0xb7fbb424 in __kernel_vsyscall ()
#1  0xb59233d2 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib/i686/cmov/libpthread.so.0
#2  0xb5c80884 in pthread_cond_timedwait () from /lib/i686/cmov/libc.so.6
#3  0xb760059c in QWaitCondition::wait () from /usr/lib/libQtCore.so.4
#4  0xb75f5d7e in ?? () from /usr/lib/libQtCore.so.4
#5  0xb75ff5e2 in ?? () from /usr/lib/libQtCore.so.4
#6  0xb591f585 in start_thread () from /lib/i686/cmov/libpthread.so.0
#7  0xb5c732be in clone () from /lib/i686/cmov/libc.so.6

Thread 1 (Thread 0xb55ad6d0 (LWP 21055)):
#0  0xb7fbb424 in __kernel_vsyscall ()
#1  0xb5c3d696 in nanosleep () from /lib/i686/cmov/libc.so.6
#2  0xb5c3d4ae in sleep () from /lib/i686/cmov/libc.so.6
#3  0xb6d268f0 in ?? () from /usr/lib/libkdeui.so.5
#4  0x00000000 in ?? ()

-----------------------

This is the console output of parley

-----------------------

QLayout: Attempting to add QLayout "" to QWidget "", which already has a layout
Kross: "Loading the interpreter library for python"                            
Kross: "Successfully loaded Interpreter instance from library."                
Kross: "PythonScript::Constructor."                                            
Kross: "PythonScript::execute"                                                 
Kross: "PythonScript::execute result=None"                                     
Kross: "PythonScript::execute connect object= signal=translateWord(QString,QString,QString) with pythonfunction=translateWord"                                
Kross: "PythonScript::Constructor."                                            
Kross: "PythonScript::execute"                                                 
Kross: "PythonScript::execute result=None"                                     
Kross: "PythonScript::execute connect object= signal=translateWord(QString,QString,QString) with pythonfunction=translateWord"                                
Kross: "PythonScript::Constructor."                                            
Kross: "PythonScript::execute"
Kross: "PythonScript::execute result=None"
Kross: "PythonScript::Constructor."
Kross: "PythonScript::execute"
Kross: "PythonScript::execute result=None"
Kross: "PythonScript::Constructor."
Kross: "PythonScript::execute"
Kross: "PythonScript::execute result=None"
Kross: "PythonScript::Destructor."
Kross: "PythonScript::Destructor."
Kross: "PythonScript::Destructor."
Kross: "PythonScript::Destructor."
Kross: "PythonScript::Destructor."
Kross: "PythonScript::Constructor."
Kross: "PythonScript::execute"
Kross: "PythonScript::execute result=None"
Kross: "PythonScript::execute connect object= signal=translateWord(QString,QString,QString) with pythonfunction=translateWord"
Kross: "PythonScript::Constructor."
Kross: "PythonScript::execute"
Kross: "PythonScript::execute result=None"
Kross: "PythonScript::execute connect object= signal=translateWord(QString,QString,QString) with pythonfunction=translateWord"
Kross: "PythonScript::Constructor."
Kross: "PythonScript::execute"
Kross: "PythonScript::execute result=None"
Kross: "PythonScript::Constructor."
Kross: "PythonScript::execute"
Kross: "PythonScript::execute result=None"
Kross: "PythonScript::Constructor."
Kross: "PythonScript::execute"
Kross: "PythonScript::execute result=None"
KCrash: Application 'parley' crashing...
sock_file=/home/ralph/.kde/socket-freud/kdeinit4__2

[1]+  Stopped                 parley
Comment 1 Daniel Laidig 2010-02-20 23:42:00 UTC
SVN commit 1093446 by laidig:

delay the reset() of the VocabularyView when setting a new document

in some cases, the reset causes the model to be accessed, which still
has a pointer to the old document and therefore crashes

BUG:227815

 M  +2 -1      vocabularyview.cpp  


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