--- atof.c.orig 2004-11-25 11:38:41.000000000 -0800 +++ atof.c 2005-02-23 18:31:38.000000000 -0800 @@ -37,11 +37,22 @@ #include <sys/cdefs.h> __FBSDID("$FreeBSD: src/lib/libc/stdlib/atof.c,v 1.5 2004/02/10 20:42:32 cperciva Exp $"); +#include "xlocale_private.h" + #include <stdlib.h> double atof(ascii) const char *ascii; { - return strtod(ascii, (char **)NULL); + return strtod_l(ascii, (char **)NULL, __current_locale()); +} + +double +atof_l(ascii, loc) + const char *ascii; + locale_t loc; +{ + /* no need to call NORMALIZE_LOCALE(loc) because strtod_l will */ + return strtod_l(ascii, (char **)NULL, loc); }