wininet: Don't close proxy connections when keep-alive is specified.
diff --git a/dlls/wininet/http.c b/dlls/wininet/http.c index 3980e9a..3f83d6d 100644 --- a/dlls/wininet/http.c +++ b/dlls/wininet/http.c
@@ -3971,9 +3971,10 @@ { WCHAR szConnectionResponse[20]; dwBufferSize = sizeof(szConnectionResponse); - if (!HTTP_HttpQueryInfoW(lpwhr, HTTP_QUERY_CONNECTION, szConnectionResponse, - &dwBufferSize, NULL) || - strcmpiW(szConnectionResponse, szKeepAlive)) + if ((!HTTP_HttpQueryInfoW(lpwhr, HTTP_QUERY_CONNECTION, szConnectionResponse, &dwBufferSize, NULL) || + strcmpiW(szConnectionResponse, szKeepAlive)) && + (!HTTP_HttpQueryInfoW(lpwhr, HTTP_QUERY_PROXY_CONNECTION, szConnectionResponse, &dwBufferSize, NULL) || + strcmpiW(szConnectionResponse, szKeepAlive))) { HTTPREQ_CloseConnection(&lpwhr->hdr); }