com php-src: Fixed bug #65268 select() implementation uses outdated tick API: NEWS win32/select.c
| From: | Anatol Belski | Date: | Thu, 18 Jul 2013 16:01:51 +0000 |
| Subject: | com php-src: Fixed bug #65268 select() implementation uses outdated tick API: NEWS win32/select.c | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-72698@lists.php.net to get a copy of this message | ||
Commit: 99afc6dc11016be47ce2ba09779ae4a34d435f5b
Author: Anatol Belski <ab@php.net> Thu, 18 Jul 2013 18:01:51 +0200
Parents: d8dd4d9b026b82d11c3623891b5114af76054e59
Branches: PHP-5.5 master
Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=99afc6dc11016be47ce2ba09779ae4a34d435f5b
Log:
Fixed bug #65268 select() implementation uses outdated tick API
Bugs:
https://bugs.php.net/65268
Changed paths:
M NEWS
M win32/select.c
Diff:
diff --git a/NEWS b/NEWS
index 81cac3b..6f4479c 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 d77ef3d..92af4be 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;