0022550: Fixing data races
[occt.git] / src / BSplCLib / BSplCLib_2.cxx
index 99f35e9..d630064 100755 (executable)
@@ -6,9 +6,6 @@
 //                            EvalBsplineBasis,
 //                            EvalPolynomial : Horners method
 
-#define No_Standard_RangeError
-#define No_Standard_OutOfRange
-
 #include <Standard_Stream.hxx>
 
 #include <BSplCLib.hxx>
 
 struct BSplCLib_DataContainer 
 {
-  BSplCLib_DataContainer(Standard_Integer Degree) 
+  BSplCLib_DataContainer(Standard_Integer Degree)
   {
-    if ( Degree > BSplCLib::MaxDegree() || BSplCLib::MaxDegree() > 25 )
-      Standard_OutOfRange::Raise ("BSplCLib: bspline degree is greater than maximum supported");
+    Standard_OutOfRange_Raise_if (Degree > BSplCLib::MaxDegree() ||
+        BSplCLib::MaxDegree() > 25,
+        "BSplCLib: bspline degree is greater than maximum supported");
   }
 
   Standard_Real poles[2*(25+1)];
@@ -918,11 +916,11 @@ void BSplCLib::FunctionMultiply
 
   for (ii = 1 ; ii <= num_new_poles ; ii++) {
     contact_order_array(ii) = 0 ;
-    (*FunctionPtr)(contact_order_array(ii),
+    FunctionPtr.Evaluate (contact_order_array(ii),
                   start_end,
                   parameters(ii),
                   result,
-                  error_code) ;
+                  error_code);
     if (error_code) {
       Status = 1 ;
       goto FINISH ;
@@ -1008,11 +1006,11 @@ void BSplCLib::FunctionReparameterise
 
   for (ii = 1 ; ii <= num_new_poles ; ii++) {
     contact_order_array(ii) = 0 ;
-    (*FunctionPtr)(contact_order_array(ii),
+    FunctionPtr.Evaluate (contact_order_array(ii),
                   start_end,
                   parameters(ii),
                   result,
-                  error_code) ;
+                  error_code);
     if (error_code) {
       Status = 1 ;
       goto FINISH ;