Replaced strtod with c_strtod where appropriate 20121204030504/pspp 20121205030504/pspp 20121206030502/pspp 20121207030505/pspp 20121208030506/pspp 20121209030502/pspp 20121210030502/pspp 20121211030505/pspp 20121212030502/pspp 20121213030503/pspp 20121214030504/pspp 20121215030502/pspp 20121216030502/pspp 20121217030502/pspp
authorJohn Darrington <john@darrington.wattle.id.au>
Mon, 3 Dec 2012 21:10:00 +0000 (22:10 +0100)
committerJohn Darrington <john@darrington.wattle.id.au>
Mon, 3 Dec 2012 21:10:00 +0000 (22:10 +0100)
Should LC_NUMERIC ever get set, this will become important.

src/data/data-in.c
src/data/gnumeric-reader.c
src/data/sys-file-reader.c
src/language/lexer/scan.c

index 5d4496cf9085de0d54509f224a89e0b0261935d1..db99aa4fb896d9d8f99657b2e7c6caf41940948e 100644 (file)
@@ -1044,7 +1044,7 @@ parse_minute_second (struct data_in *i, double *time)
     *cp++ = ss_get_byte (&i->input);
   *cp = '\0';
 
-  *time += strtod (buf, NULL);
+  *time += c_strtod (buf, NULL);
 
   return NULL;
 }
index b9def31cb6d7ee9c9b728cb1a76125f08716ec18..a1a7415ca1b5f03097432324567293e9cfb549b4 100644 (file)
@@ -20,6 +20,7 @@
 #include "libpspp/misc.h"
 
 #include "gl/minmax.h"
+#include "gl/c-strtod.h"
 
 #include "gettext.h"
 #define _(msgid) gettext (msgid)
@@ -257,7 +258,7 @@ convert_xml_string_to_value (struct ccase *c, const struct variable *var,
       char *endptr;
 
       errno = 0;
-      v->f = strtod (text, &endptr);
+      v->f = c_strtod (text, &endptr);
       if ( errno != 0 || endptr == text)
        v->f = SYSMIS;
     }
index 4a7476ae04840dfadf31103bde26e0f3bf1edd7a..83da9ee82e9d4fd6dc558d5a77fb741673861e6b 100644 (file)
@@ -50,6 +50,7 @@
 #include "libpspp/str.h"
 #include "libpspp/stringi-set.h"
 
+#include "gl/c-strtod.h"
 #include "gl/c-ctype.h"
 #include "gl/inttostr.h"
 #include "gl/localcharset.h"
@@ -1437,7 +1438,7 @@ parse_mrsets (struct sfm_reader *r, const struct sfm_extension_record *record,
           mrset->width = width;
           value_init (&mrset->counted, width);
           if (width == 0)
-            mrset->counted.f = strtod (counted, NULL);
+            mrset->counted.f = c_strtod (counted, NULL);
           else
             value_copy_str_rpad (&mrset->counted, width,
                                  (const uint8_t *) counted, ' ');
index caf294a9d123b4aa28192775ba25aa5d53cb9e7e..de75eeef3bd1f519a5508c55924be76cc6a2bd66 100644 (file)
@@ -27,6 +27,7 @@
 #include "libpspp/cast.h"
 
 #include "gl/c-ctype.h"
+#include "gl/c-strtod.h"
 #include "gl/xmemdup0.h"
 
 enum
@@ -379,7 +380,7 @@ scan_number__ (struct substring s)
   else
     p = xmemdup0 (s.string, s.length);
 
-  number = strtod (p, NULL);
+  number = c_strtod (p, NULL);
 
   if (p != buf)
     free (p);