From 990f50a73bca9f9fe4f261161b25fb8fb4432e52 Mon Sep 17 00:00:00 2001 From: Redirect 'Slash' NIL Date: Sat, 17 Oct 2009 22:18:38 -0700 Subject: [PATCH] safer conversion to HANDLER on MinGW-W64 Assign to "intptr_t", which on some versions of MS-Windows will widen the variable; then cast to HANDLE. --- src/helper/replacements.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/helper/replacements.c b/src/helper/replacements.c index 77e4ee7a..ef20e771 100644 --- a/src/helper/replacements.c +++ b/src/helper/replacements.c @@ -169,7 +169,7 @@ int win_select(int max_fd, fd_set *rfds, fd_set *wfds, fd_set *efds, struct time /* build an array of handles for non-sockets */ for (i = 0; i < max_fd; i++) { if (SAFE_FD_ISSET(i, rfds) || SAFE_FD_ISSET(i, wfds) || SAFE_FD_ISSET(i, efds)) { - long handle = _get_osfhandle(i); + intptr_t handle = (intptr_t) _get_osfhandle(i); handles[n_handles] = (HANDLE)handle; if (handles[n_handles] == INVALID_HANDLE_VALUE) { /* socket */ @@ -244,7 +244,7 @@ int win_select(int max_fd, fd_set *rfds, fd_set *wfds, fd_set *efds, struct time if (WAIT_OBJECT_0 == WaitForSingleObject(handles[i], 0)) { if (SAFE_FD_ISSET(handle_slot_to_fd[i], rfds)) { DWORD dwBytes; - long handle = _get_osfhandle(handle_slot_to_fd[i]); + intptr_t handle = (intptr_t) _get_osfhandle(handle_slot_to_fd[i]); if (PeekNamedPipe((HANDLE)handle, NULL, 0, NULL, &dwBytes, NULL)) { -- 2.39.5