From: Anatol Belski Date: Thu, 18 Jul 2013 16:01:51 +0000 (+0200) Subject: Fixed bug #65268 select() implementation uses outdated tick API X-Git-Tag: php-5.5.2RC1~13^2~17 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=99afc6dc11016be47ce2ba09779ae4a34d435f5b;p=php Fixed bug #65268 select() implementation uses outdated tick API --- diff --git a/NEWS b/NEWS index 81cac3b8e6..6f4479ccd5 100644 --- a/NEWS +++ b/NEWS @@ -2,6 +2,9 @@ PHP NEWS ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ?? ??? 2013, PHP 5.5.2 +- Streams: + . Fixed bug #65268 (select() implementation uses outdated tick API). (Anatol) + 18 Jul 2013, PHP 5.5.1 - Core: diff --git a/win32/select.c b/win32/select.c index d77ef3de00..92af4be7b8 100644 --- a/win32/select.c +++ b/win32/select.c @@ -36,7 +36,7 @@ * */ PHPAPI int php_select(int max_fd, fd_set *rfds, fd_set *wfds, fd_set *efds, struct timeval *tv) { - DWORD ms_total, limit; + ULONGLONG ms_total, limit; HANDLE handles[MAXIMUM_WAIT_OBJECTS]; int handle_slot_to_fd[MAXIMUM_WAIT_OBJECTS]; int n_handles = 0, i; @@ -97,7 +97,7 @@ PHPAPI int php_select(int max_fd, fd_set *rfds, fd_set *wfds, fd_set *efds, stru FD_ZERO(&awrite); FD_ZERO(&aexcept); - limit = GetTickCount() + ms_total; + limit = GetTickCount64() + ms_total; do { retcode = 0; @@ -149,7 +149,7 @@ PHPAPI int php_select(int max_fd, fd_set *rfds, fd_set *wfds, fd_set *efds, stru } } } - } while (retcode == 0 && (ms_total == INFINITE || GetTickCount() < limit)); + } while (retcode == 0 && (ms_total == INFINITE || GetTickCount64() < limit)); if (rfds) { *rfds = aread;