X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=gnu%2Fsleep.c;h=305e02d048753149e7595372372eb5ed35bf65b7;hb=1a44d77d50f4fb37c0410eed04b82303624ea2ec;hp=4303d47af1c76bd39729fdf1b665dacd366eb2d0;hpb=22f1eb8bc17e5be72dd23d42d6aaa60196ac22e6;p=debian%2Ftar diff --git a/gnu/sleep.c b/gnu/sleep.c index 4303d47a..305e02d0 100644 --- a/gnu/sleep.c +++ b/gnu/sleep.c @@ -1,7 +1,7 @@ /* -*- buffer-read-only: t -*- vi: set ro: */ /* DO NOT EDIT! GENERATED AUTOMATICALLY! */ /* Pausing execution of the current thread. - Copyright (C) 2007, 2009, 2010 Free Software Foundation, Inc. + Copyright (C) 2007, 2009-2011 Free Software Foundation, Inc. Written by Bruno Haible , 2007. This program is free software: you can redistribute it and/or modify @@ -52,13 +52,14 @@ sleep (unsigned int seconds) /* Guarantee unlimited sleep and a reasonable return value. Cygwin 1.5.x rejects attempts to sleep more than 49.7 days (2**32 milliseconds), but uses uninitialized memory which results in a - garbage answer. */ + garbage answer. Similarly, Linux 2.6.9 with glibc 2.3.4 has a too + small return value when asked to sleep more than 24.85 days. */ unsigned int rpl_sleep (unsigned int seconds) { /* This requires int larger than 16 bits. */ - verify (UINT_MAX / 49 / 24 / 60 / 60); - const unsigned int limit = 49 * 24 * 60 * 60; + verify (UINT_MAX / 24 / 24 / 60 / 60); + const unsigned int limit = 24 * 24 * 60 * 60; while (limit < seconds) { unsigned int result;