diff --git a/optimizer/Util/SDDSParser.h b/optimizer/Util/SDDSParser.h
index fd08ade9fdc53452182079f5dfb2c1645bb2ba7a..7143cacdeb03278629d7d1bde2506abb2030c0a3 100644
--- a/optimizer/Util/SDDSParser.h
+++ b/optimizer/Util/SDDSParser.h
@@ -144,7 +144,7 @@ namespace SDDS {
                     * (value_after - value_before)
                     / (value_after_ref - value_before_ref);
 
-            if (std::isfinite(nval))
+            if (!std::isfinite(nval))
                 throw SDDSParserException("SDDSParser::getInterpolatedValue",
                                           "Interpolated value either NaN or Inf.");
         }