diff options
Diffstat (limited to 'Build/source/utils/asymptote/main.cc')
-rw-r--r-- | Build/source/utils/asymptote/main.cc | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/Build/source/utils/asymptote/main.cc b/Build/source/utils/asymptote/main.cc index 4361e3dce42..c2b7b627bba 100644 --- a/Build/source/utils/asymptote/main.cc +++ b/Build/source/utils/asymptote/main.cc @@ -44,6 +44,10 @@ #include "interact.h" #include "fileio.h" +#ifdef HAVE_LIBFFTW3 +#include "fftw++.h" +#endif + #ifdef HAVE_LSP #include "lspserv.h" #endif @@ -114,6 +118,9 @@ void signalHandler(int) void interruptHandler(int) { +#ifdef HAVE_LIBFFTW3 + fftwpp::saveWisdom(); +#endif em.Interrupt(true); } @@ -140,6 +147,7 @@ void *asymain(void *A) setsignal(signalHandler); Args *args=(Args *) A; fpu_trap(trap()); + fftwpp::wisdomName=".wisdom"; if(interactive) { Signal(SIGINT,interruptHandler); @@ -193,9 +201,10 @@ void *asymain(void *A) } else { for(int ind=0; ind < n; ind++) { string name=(getArg(ind)); - if(name == stripExt(name)+".v3d") { + string prefix=stripExt(name); + if(name == prefix+".v3d") { interact::uptodate=false; - runString("import v3d; defaultfilename=\""+stripDir(name)+ + runString("import v3d; defaultfilename=\""+stripDir(prefix)+ "\"; importv3d(\""+name+"\");"); } else processFile(name,n > 1); |