summaryrefslogtreecommitdiffstats
path: root/newlib/libc/machine/spu/sleep.c
blob: f3aa97954a09f1fe473a1ad03c1bc6642bb85398 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
/* Copied from libc/posix/sleep.c, removed the check for HAVE_NANOSLEEP */

/* Written 2000 by Werner Almesberger */

#include <errno.h>
#include <time.h>
#include <unistd.h>

unsigned sleep(unsigned seconds)
{
    struct timespec ts;

    ts.tv_sec = seconds;
    ts.tv_nsec = 0;
    if (!nanosleep(&ts,&ts)) return 0;
    if (errno == EINTR) return ts.tv_sec;
    return -1;
}