changeset 5386:f64ec7b38586

[project @ 2005-06-14 16:15:43 by jwe]
author jwe
date Tue, 14 Jun 2005 16:15:43 +0000
parents 5f48f2956e37
children 5b00a8beb504
files liboctave/CMatrix.cc liboctave/ChangeLog liboctave/dMatrix.cc
diffstat 3 files changed, 10 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/liboctave/CMatrix.cc	Tue Jun 14 16:04:03 2005 +0000
+++ b/liboctave/CMatrix.cc	Tue Jun 14 16:15:43 2005 +0000
@@ -2608,8 +2608,10 @@
 	double i_val = std::imag (val);
 
 	if ((! octave_is_NaN_or_NA (r_val)
+	     && ! xisinf (r_val)
 	     && (r_val > FLT_MAX || r_val < FLT_MIN))
 	    || (! octave_is_NaN_or_NA (i_val)
+		&& ! xisinf (i_val)
 		&& (i_val > FLT_MAX || i_val < FLT_MIN)))
 	  return true;
       }
--- a/liboctave/ChangeLog	Tue Jun 14 16:04:03 2005 +0000
+++ b/liboctave/ChangeLog	Tue Jun 14 16:15:43 2005 +0000
@@ -1,3 +1,8 @@
+2005-06-14  John W. Eaton  <jwe@octave.org>
+
+    * dMatrix.cc (Matrix::too_large_for_float): Special case Inf values too.
+    * CMatrix.cc (ComplexMatrix::too_large_for_float): Ditto.
+
 2005-06-14  David Bateman  <dbateman@free.fr>
 
     * dMatrix.cc (Matrix::too_large_for_float): Special case NaN and NA values.
--- a/liboctave/dMatrix.cc	Tue Jun 14 16:04:03 2005 +0000
+++ b/liboctave/dMatrix.cc	Tue Jun 14 16:15:43 2005 +0000
@@ -2114,7 +2114,9 @@
     {
       double val = elem (i);
 
-      if (! octave_is_NaN_or_NA (val) && (val > FLT_MAX || val < FLT_MIN))
+      if (! octave_is_NaN_or_NA (val)
+	  && ! xisinf (val)
+	  && (val > FLT_MAX || val < FLT_MIN))
 	return true;
     }