Bug 87128 - filtering an equation crashes kst.
Summary: filtering an equation crashes kst.
Status: RESOLVED FIXED
Alias: None
Product: kst
Classification: Applications
Component: general (show other bugs)
Version: 1.x
Platform: unspecified Linux
: NOR normal
Target Milestone: ---
Assignee: George Staikos
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-08-13 16:28 UTC by Netterfield
Modified: 2004-08-13 21:36 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Netterfield 2004-08-13 16:28:28 UTC
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.
Comment 1 Andrew Walker 2004-08-13 18:10:01 UTC
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
Comment 2 George Staikos 2004-08-13 21:11:31 UTC
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;
 }


Comment 3 George Staikos 2004-08-13 21:31:22 UTC
_yvector is set to an empty string, is not found, and that is causing the crash.
Comment 4 George Staikos 2004-08-13 21:36:14 UTC
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