Version: 0.99-devel (using KDE 3.2 BRANCH >= 20040204, Mandrake Linux Cooker i586 - Cooker) Compiler: gcc version 3.3.2 (Mandrake Linux 10.0 3.3.2-6mdk) OS: Linux (i686) release 2.6.3-7mdk filtering an equation crashes kst. Fitting appears to be fine (other than jagged lines in real time mode). How to reproduce: plot an equation in kst, eg kst --xe 0:100:100 -ye 'sin(x/5)' apply a filter (plot->rmb->filter->...) eg, Butterworth-lowpass, order 4, Cutoff 0.1) kst crashes. Note that a fit works fine.
From the backtrace it appears to be a thread locking problem... [New Thread 1093989824 (LWP 5113)] [New Thread 1105546432 (LWP 5114)] 0xffffe002 in ?? () #0 0xffffe002 in ?? () #1 0x4078d5bd in KCrash::defaultCrashHandler(int) () from /usr/lib/libkdecore.so.4 #2 <signal handler called> #3 0x0807e009 in KstDataObject::writeUnlock() const (this=0x83a4bd8) at kstsharedptr.h:131 #4 0x080c9872 in KstFilterDialogI::saveInputs(KstSharedPtr<KstPlugin>, KstSharedPtr<Plugin>) (this=0x84d6eb8, plugin={ptr = 0x83a4bd8}, p={ptr = 0x83d18e8}) at kstsharedptr.h:132 #5 0x080cb064 in KstFilterDialogI::new_I() (this=0x84d6eb8) at kstsharedptr.h:88 #6 0x080c8cb8 in KstFilterDialogI::OK() (this=0x84d6eb8) at kstfilterdialog_i.cpp:102
CVS commit by staikos: first of at least 2 locking fixes - remove stray unlock CCMAIL: 87128@bugs.kde.org M +0 -1 kstfilterdialog_i.cpp 1.9 --- kdeextragear-2/kst/kst/kstfilterdialog_i.cpp #1.8:1.9 @@ -270,5 +270,4 @@ bool KstFilterDialogI::saveInputs(KstPlu KST::vectorList.lock().readUnlock(); - plugin->writeUnlock(); return true; }
_yvector is set to an empty string, is not found, and that is causing the crash.
CVS commit by staikos: base curve list, not vcurve list for the list of all curves. -> more evidence that equation/hs/psd should actually be objects, not curves more error handling was added to the locking code in the process of debugging this and may or may not be needed to fix all the crash cases CCMAIL: 87128-done@bugs.kde.org M +31 -11 kstfilterdialog_i.cpp 1.10