changeset 10338:21dd58bd683c

fix unsafe conversion in find
author Jaroslav Hajek <highegg@gmail.com>
date Fri, 19 Feb 2010 10:44:27 +0100
parents 7c97da90fc8f
children de2d43bcb083
files src/ChangeLog src/DLD-FUNCTIONS/find.cc
diffstat 2 files changed, 7 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/ChangeLog	Fri Feb 19 07:06:36 2010 +0100
+++ b/src/ChangeLog	Fri Feb 19 10:44:27 2010 +0100
@@ -1,3 +1,8 @@
+2010-02-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/find.cc (Ffind): Avoid unsafe conversion from Inf to
+	integer.
+
 2010-02-18  Jaroslav Hajek  <highegg@gmail.com>
 
 	* syscalls.cc (mk_stat_result): New helper function.
--- a/src/DLD-FUNCTIONS/find.cc	Fri Feb 19 07:06:36 2010 +0100
+++ b/src/DLD-FUNCTIONS/find.cc	Fri Feb 19 10:44:27 2010 +0100
@@ -440,12 +440,12 @@
     {
       double val = args(1).scalar_value ();
 
-      if (error_state || (! xisinf (val) && (val < 0 || val != xround (val))))
+      if (error_state || (val < 0 || (! xisinf (val) && val != xround (val))))
         {
           error ("find: expecting second argument to be a nonnegative integer");
           return retval;
         }
-      else
+      else if (! xisinf (val))
         n_to_find = val;
     }