diff options
Diffstat (limited to 'coreutils/sleep.c')
-rw-r--r-- | coreutils/sleep.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/coreutils/sleep.c b/coreutils/sleep.c index de18dd0db..b16d03c2b 100644 --- a/coreutils/sleep.c +++ b/coreutils/sleep.c | |||
@@ -54,11 +54,13 @@ int sleep_main(int argc UNUSED_PARAM, char **argv) | |||
54 | char *arg = *argv; | 54 | char *arg = *argv; |
55 | if (strchr(arg, '.')) { | 55 | if (strchr(arg, '.')) { |
56 | double d; | 56 | double d; |
57 | char *pp; | ||
57 | int len = strspn(arg, "0123456789."); | 58 | int len = strspn(arg, "0123456789."); |
58 | char sv = arg[len]; | 59 | char sv = arg[len]; |
59 | arg[len] = '\0'; | 60 | arg[len] = '\0'; |
60 | d = bb_strtod(arg, NULL); | 61 | errno = 0; |
61 | if (errno) | 62 | d = strtod(arg, &pp); |
63 | if (errno || *pp) | ||
62 | bb_show_usage(); | 64 | bb_show_usage(); |
63 | arg[len] = sv; | 65 | arg[len] = sv; |
64 | len--; | 66 | len--; |