mirror of
https://github.com/openmoh/openmohaa.git
synced 2025-04-28 13:47:58 +03:00
Use nanosleep(2) instead of usleep(3)
usleep(3) was declared obsolete in POSIX.1-2001 and removed in POSIX.1-2008 and nanosleep(2) was recommended to be used instead.
This commit is contained in:
parent
dcb0369e10
commit
769d06b0f0
2 changed files with 10 additions and 2 deletions
|
@ -933,10 +933,13 @@ static void waitToApplyUpdates(void)
|
|||
OS forcibly closes the pipe), we will unblock. Then we can loop on
|
||||
kill() until the process is truly gone. */
|
||||
int x = 0;
|
||||
struct timespec req;
|
||||
req.tv_sec = 0;
|
||||
req.tv_nsec = 100000000;
|
||||
read(3, &x, sizeof (x));
|
||||
info("Pipe has closed, waiting for process to fully go away now.");
|
||||
while (kill(options.waitforprocess, 0) == 0) {
|
||||
usleep(100000);
|
||||
nanosleep(&req, NULL);
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -40,6 +40,7 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|||
#include <fcntl.h>
|
||||
#include <fenv.h>
|
||||
#include <sys/wait.h>
|
||||
#include <time.h>
|
||||
|
||||
qboolean stdinIsATTY;
|
||||
|
||||
|
@ -550,11 +551,15 @@ void Sys_Sleep( int msec )
|
|||
}
|
||||
else
|
||||
{
|
||||
struct timespec req;
|
||||
|
||||
// With nothing to select() on, we can't wait indefinitely
|
||||
if( msec < 0 )
|
||||
msec = 10;
|
||||
|
||||
usleep( msec * 1000 );
|
||||
req.tv_sec = msec/1000;
|
||||
req.tv_nsec = (msec%1000)*1000000;
|
||||
nanosleep(&req, NULL);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue