mr Hartroth correctly pointed out that poll() isn't really that portable

so we need to hack around it when not there
This commit is contained in:
Daniel Stenberg 2002-08-13 12:12:08 +00:00
parent 6a3e2272e9
commit 086daf913c
2 changed files with 22 additions and 0 deletions

View File

@ -31,3 +31,7 @@
/* Define if you have the `setvbuf' function. */
#undef HAVE_SETVBUF
/* Define if you have the `poll' function. */
#undef HAVE_POLL

View File

@ -1878,8 +1878,26 @@ static int parseconfig(const char *filename,
static void go_sleep(long ms)
{
#ifdef HAVE_POLL
/* portable subsecond "sleep" */
poll((void *)0, 0, ms);
#else
/* systems without poll() need other solutions */
#ifdef WIN32
/* Windows offers a millisecond sleep */
Sleep(ms);
#else
/* Other systems must use select() for this */
struct timeval timeout;
timeout.tv_sec = 0;
timeout.tv_usec = ms * 1000;
select(0, NULL, NULL, NULL, &timeout);
#endif
#endif
}
struct OutStruct {