diff liboctave/DASSL.cc @ 4180:84fe3ca3a246

[project @ 2002-11-15 04:47:01 by jwe]
author jwe
date Fri, 15 Nov 2002 04:47:02 +0000
parents 47d3baea432d
children 5719210fff4c
line wrap: on
line diff
--- a/liboctave/DASSL.cc
+++ b/liboctave/DASSL.cc
@@ -35,6 +35,7 @@
 #include "f77-fcn.h"
 #include "lo-error.h"
 #include "lo-sstream.h"
+#include "quit.h"
 
 typedef int (*dassl_fcn_ptr) (const double&, const double*, const double*,
 			      double*, int&, double*, int*);
@@ -59,6 +60,8 @@
 ddassl_f (const double& time, const double *state, const double *deriv,
 	  double *delta, int& ires, double *, int *)
 {
+  BEGIN_INTERRUPT_WITH_EXCEPTIONS;
+
   // XXX FIXME XXX -- would be nice to avoid copying the data.
 
   ColumnVector tmp_deriv (nn);
@@ -84,6 +87,8 @@
 	}
     }
 
+  END_INTERRUPT_WITH_EXCEPTIONS;
+
   return 0;
 }
 
@@ -91,6 +96,8 @@
 ddassl_j (const double& time, const double *state, const double *deriv,
 	  double *pd, const double& cj, double *, int *)
 {
+  BEGIN_INTERRUPT_WITH_EXCEPTIONS;
+
   // XXX FIXME XXX -- would be nice to avoid copying the data.
 
   ColumnVector tmp_state (nn);
@@ -108,6 +115,8 @@
     for (int i = 0; i < nn; i++)
       pd [nn * j + i] = tmp_pd.elem (i, j);
 
+  END_INTERRUPT_WITH_EXCEPTIONS;
+
   return 0;
 }