1
0
mirror of https://git.tartarus.org/simon/putty.git synced 2025-04-19 03:58:05 -05:00

Windows PSFTP has two places that call run_timers and I'd only updated

one of them.  Correct that.

[originally from svn r9676]
This commit is contained in:
Ben Harris 2012-09-19 22:17:10 +00:00
parent 897029153f
commit c048389315

View File

@ -611,7 +611,7 @@ int ssh_sftp_loop_iteration(void)
if (p_WSAEventSelect == NULL) { if (p_WSAEventSelect == NULL) {
fd_set readfds; fd_set readfds;
int ret; int ret;
long now = GETTICKCOUNT(); unsigned long now = GETTICKCOUNT(), then;
if (sftp_ssh_socket == INVALID_SOCKET) if (sftp_ssh_socket == INVALID_SOCKET)
return -1; /* doom */ return -1; /* doom */
@ -620,13 +620,17 @@ int ssh_sftp_loop_iteration(void)
select_result((WPARAM) sftp_ssh_socket, (LPARAM) FD_WRITE); select_result((WPARAM) sftp_ssh_socket, (LPARAM) FD_WRITE);
do { do {
long next, ticks; unsigned long next;
long ticks;
struct timeval tv, *ptv; struct timeval tv, *ptv;
if (run_timers(now, &next)) { if (run_timers(now, &next)) {
ticks = next - GETTICKCOUNT(); then = now;
if (ticks <= 0) now = GETTICKCOUNT();
ticks = 1; /* just in case */ if (now - then > next - then)
ticks = 0;
else
ticks = next - now;
tv.tv_sec = ticks / 1000; tv.tv_sec = ticks / 1000;
tv.tv_usec = ticks % 1000 * 1000; tv.tv_usec = ticks % 1000 * 1000;
ptv = &tv; ptv = &tv;