--- atoll.c.orig 2003-05-20 15:23:24.000000000 -0700 +++ atoll.c 2005-02-23 18:35:02.000000000 -0800 @@ -34,11 +34,22 @@ #include <sys/cdefs.h> __FBSDID("$FreeBSD: src/lib/libc/stdlib/atoll.c,v 1.4 2002/03/22 21:53:10 obrien Exp $"); +#include "xlocale_private.h" + #include <stdlib.h> long long atoll(str) const char *str; { - return strtoll(str, (char **)NULL, 10); + return strtoll_l(str, (char **)NULL, 10, __current_locale()); +} + +long long +atoll_l(str, loc) + const char *str; + locale_t loc; +{ + /* no need to call NORMALIZE_LOCALE(loc) because strtoll_l will */ + return strtoll_l(str, (char **)NULL, 10, loc); }