diff options
Diffstat (limited to 'winsup/mingw/mingwex/usleep.c')
-rwxr-xr-x | winsup/mingw/mingwex/usleep.c | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/winsup/mingw/mingwex/usleep.c b/winsup/mingw/mingwex/usleep.c new file mode 100755 index 000000000..b322a7703 --- /dev/null +++ b/winsup/mingw/mingwex/usleep.c @@ -0,0 +1,40 @@ +/* + * usleep + * Implementation according to: + * The Open Group Base Specifications Issue 6 + * IEEE Std 1003.1, 2004 Edition + */ + +/* + * THIS SOFTWARE IS NOT COPYRIGHTED + * + * This source code is offered for use in the public domain. You may + * use, modify or distribute it freely. + * + * This code is distributed in the hope that it will be useful but + * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY + * DISCLAIMED. This includes but is not limited to warranties of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * + * Contributed by: + * Ramiro Polla <ramiro@lisha.ufsc.br> + */ + +#include <sys/types.h> +#include <errno.h> + +#define WIN32_LEAN_AND_MEAN +#include <windows.h> + +int __cdecl usleep(useconds_t useconds) +{ + if(useconds == 0) + return 0; + + if(useconds >= 1000000) + return EINVAL; + + Sleep(useconds / 1000); + + return 0; +} |