mirror of
https://github.com/coreutils/coreutils.git
synced 2024-12-12 19:34:40 +08:00
(print_uptime): Use the C numeric locale for sscanf
of /proc/uptime data, then restore.
This commit is contained in:
parent
c4ece6d8cb
commit
62b3fd4e81
@ -1,5 +1,5 @@
|
||||
/* GNU's uptime.
|
||||
Copyright (C) 92, 93, 94, 95, 96, 1997, 1998 Free Software Foundation, Inc.
|
||||
Copyright (C) 92, 93, 94, 95, 96, 1997, 1998, 1999 Free Software Foundation, Inc.
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
@ -63,9 +63,14 @@ print_uptime (int n, const STRUCT_UTMP *this)
|
||||
char buf[BUFSIZ];
|
||||
int res;
|
||||
fgets (buf, BUFSIZ, fp);
|
||||
|
||||
/* The following sscanf must use the C locale. */
|
||||
setlocale (LC_NUMERIC, "C");
|
||||
res = sscanf (buf, "%lf", &upsecs);
|
||||
setlocale (LC_NUMERIC, "");
|
||||
if (res == 1)
|
||||
uptime = (time_t) upsecs;
|
||||
|
||||
fclose (fp);
|
||||
}
|
||||
#endif /* HAVE_PROC_UPTIME */
|
||||
|
Loading…
Reference in New Issue
Block a user