2009-12-30 Rodrigo Kumpera <rkumpera@novell.com>
[mono.git] / mono / io-layer / misc.c
blob82835cc52b937ac0598b8bdb4c66fed8d2bd9e9a
1 /*
2 * misc.c: Miscellaneous internal support functions
4 * Author:
5 * Dick Porter (dick@ximian.com)
7 * (C) 2002 Ximian, Inc.
8 */
10 #include <config.h>
11 #include <glib.h>
12 #include <sys/time.h>
13 #include <stdlib.h>
14 #include <string.h>
16 #include "misc-private.h"
18 void _wapi_calc_timeout(struct timespec *timeout, guint32 ms)
20 struct timeval now;
21 div_t ms_divvy, overflow_divvy;
23 gettimeofday (&now, NULL);
25 ms_divvy = div (ms, 1000);
26 overflow_divvy = div ((now.tv_usec / 1000) + ms_divvy.rem, 1000);
28 timeout->tv_sec = now.tv_sec + ms_divvy.quot + overflow_divvy.quot;
29 timeout->tv_nsec = overflow_divvy.rem * 1000000;