summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--nuttx/libc/unistd/lib_usleep.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/nuttx/libc/unistd/lib_usleep.c b/nuttx/libc/unistd/lib_usleep.c
index e48ae4267..3088c7737 100644
--- a/nuttx/libc/unistd/lib_usleep.c
+++ b/nuttx/libc/unistd/lib_usleep.c
@@ -129,14 +129,16 @@
int usleep(useconds_t usec)
{
struct timespec rqtp;
+ time_t sec;
int ret = 0;
if (usec)
{
/* Let nanosleep() do all of the work. */
- rqtp.tv_sec = usec / 1000000;
- rqtp.tv_nsec = (usec % 1000000) * 1000;
+ sec = usec / 1000000;
+ rqtp.tv_sec = sec;
+ rqtp.tv_nsec = (usec - (sec * 1000000)) * 1000;
ret = nanosleep(&rqtp, NULL);
}