From 5b173cb405a5859976022482cb62a769f92dfef8 Mon Sep 17 00:00:00 2001 From: Karsten Elfenbein Date: Sun, 8 May 2011 12:29:06 +0200 Subject: [PATCH] wininet: Follow 307 temporary redirect. --- dlls/wininet/http.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/dlls/wininet/http.c b/dlls/wininet/http.c index d925975d6cd..b246d6780d3 100644 --- a/dlls/wininet/http.c +++ b/dlls/wininet/http.c @@ -4415,6 +4415,7 @@ static DWORD HTTP_HttpSendRequestW(http_request_t *request, LPCWSTR lpszHeaders, dwBufferSize=sizeof(szNewLocation); if ((dwStatusCode == HTTP_STATUS_REDIRECT || dwStatusCode == HTTP_STATUS_MOVED || + dwStatusCode == HTTP_STATUS_REDIRECT_KEEP_VERB || dwStatusCode == HTTP_STATUS_REDIRECT_METHOD) && HTTP_HttpQueryInfoW(request,HTTP_QUERY_LOCATION,szNewLocation,&dwBufferSize,NULL) == ERROR_SUCCESS) { @@ -4574,7 +4575,10 @@ static DWORD HTTP_HttpEndRequestW(http_request_t *request, DWORD dwFlags, DWORD_ { DWORD dwCode,dwCodeLength = sizeof(DWORD); if (HTTP_HttpQueryInfoW(request, HTTP_QUERY_FLAG_NUMBER|HTTP_QUERY_STATUS_CODE, &dwCode, &dwCodeLength, NULL) == ERROR_SUCCESS - && (dwCode == 302 || dwCode == 301 || dwCode == 303)) + && (dwCode == HTTP_STATUS_REDIRECT || + dwCode == HTTP_STATUS_MOVED || + dwCode == HTTP_STATUS_REDIRECT_METHOD || + dwCode == HTTP_STATUS_REDIRECT_KEEP_VERB)) { WCHAR *new_url, szNewLocation[INTERNET_MAX_URL_LENGTH]; dwBufferSize=sizeof(szNewLocation);