[Kst] Re: CDF datasource (again)

George Staikos staikos at kde.org
Tue Aug 3 19:15:42 CEST 2004

On Tuesday 03 August 2004 10:00, Nicolas.Brisset at eurocopter.com wrote:
> I have finished implementing the new frameCount() and after testing around
> for hours, I HAVE FOUND A WAY TO AVOID ANY CRASH with the CDF datasource:
> disable updates (I currently do this by pushing the "Pause" toolbar
> button). As I suspected, it seems that the CDF library cannot handle
> concurrent read access to a same file, as all crashes seem to happen in
> such circumstances. Note that disabling updates with cdf is not really a

   Ok we can work around this.  Changing the state of Kst from the datasource 
is a bit unorthodox and I really hesitate to add this right now.  However we 
could guard the datasource functions a mutex.  It will make things a bit 
choppy during loading, but I'm sure that's acceptable.

> > We need to write an
> > autoconf check for CDF before we can enable the datasource for general
> > compilation. If this is done by next week, we can ship it in 0.99.
> I have seen your commits about that. Looks good, though I'm wondering if it
> is normal that you left your hard-coded include and library paths
> in .../datasources/cdf/Makefile.am ? I thought they would be taken from the
> result of configure checks (including --with-extra-... switches the user
> may have to use at configure time), but I do not understand the process
> very clearly :-)

   Fixed, sorry about that.  I missed it.  Yes, we use the --with-extra-libs 
and --with-extra-includes switches for that.  Maybe later on I'll add 
--with-cdf= and --with-piolib=

> Attached is the current version of cdf.cpp for someone (George ?) to
> commit. I'll have to learn diff one of these days...

    "cvs -z3 diff -u3p" in the directory you're working from if it's the CVS 
directory.  If not, "diff -u3p oldfile newfile".  There are also graphical 
tools for KDE that can help you with this.

   New file committed with a couple parts removed since I had changed them 
myself already (removed an outdated comment, use .isEmpty() instead of 
comparing to QString::null since it's much more efficient).

George Staikos
KDE Developer				http://www.kde.org/
Staikos Computing Services Inc.		http://www.staikos.net/

More information about the Kst mailing list