1
0
mirror of https://github.com/moparisthebest/curl synced 2024-11-16 14:35:03 -05:00

singlesocket: fix the 'sincebefore' placement

The variable wasn't properly reset within the loop and thus could remain
set for sockets that hadn't been set before and miss notifying the app.

This is a follow-up to 4c35574 (shipped in curl 7.64.0)

Reported-by: buzo-ffm on github
Detected-by: Jan Alexander Steffens
Fixes #3585
Closes #3589
This commit is contained in:
Daniel Stenberg 2019-02-19 15:56:54 +01:00
parent b08898fb29
commit afc00e047c
No known key found for this signature in database
GPG Key ID: 5CC908FDB71E12C2

View File

@ -2349,8 +2349,6 @@ static CURLMcode singlesocket(struct Curl_multi *multi,
int num; int num;
unsigned int curraction; unsigned int curraction;
int actions[MAX_SOCKSPEREASYHANDLE]; int actions[MAX_SOCKSPEREASYHANDLE];
unsigned int comboaction;
bool sincebefore = FALSE;
for(i = 0; i< MAX_SOCKSPEREASYHANDLE; i++) for(i = 0; i< MAX_SOCKSPEREASYHANDLE; i++)
socks[i] = CURL_SOCKET_BAD; socks[i] = CURL_SOCKET_BAD;
@ -2369,6 +2367,8 @@ static CURLMcode singlesocket(struct Curl_multi *multi,
i++) { i++) {
unsigned int action = CURL_POLL_NONE; unsigned int action = CURL_POLL_NONE;
unsigned int prevaction = 0; unsigned int prevaction = 0;
unsigned int comboaction;
bool sincebefore = FALSE;
s = socks[i]; s = socks[i];