All pastes #257459 Raw Edit

Miscellany

public text v1 · immutable
#257459 ·published 2006-11-25 10:11 UTC
rendered paste body
// Use select() to determine when data is waiting to be read
int metaPing_waitForEchoReply(SOCKET s, int waittime)
{
	struct timeval Timeout;
	fd_set readfds;
	int nRet;

	// untill I find a better way of killing this thread, only
	// wait in periods of maximum 250ms. Better for menu responsiveness ;-)
	if (waittime > 250) waittime = 250;

	readfds.fd_count = 1;
	readfds.fd_array[0] = s;
	Timeout.tv_sec = waittime / 1000;
	Timeout.tv_usec = waittime % 1000;

	nRet=(select(1, &readfds, NULL, NULL, &Timeout));
	return nRet;

}