wininet: Remove custom content-length/type headers from redirects.
This commit is contained in:
parent
34480aef09
commit
a1ebffb452
@ -2861,10 +2861,13 @@ static BOOL HTTP_GetRequestURL(WININETHTTPREQW *req, LPWSTR buf)
|
|||||||
*/
|
*/
|
||||||
static BOOL HTTP_HandleRedirect(LPWININETHTTPREQW lpwhr, LPCWSTR lpszUrl)
|
static BOOL HTTP_HandleRedirect(LPWININETHTTPREQW lpwhr, LPCWSTR lpszUrl)
|
||||||
{
|
{
|
||||||
|
static const WCHAR szContentType[] = {'C','o','n','t','e','n','t','-','T','y','p','e',0};
|
||||||
|
static const WCHAR szContentLength[] = {'C','o','n','t','e','n','t','-','L','e','n','g','t','h',0};
|
||||||
LPWININETHTTPSESSIONW lpwhs = lpwhr->lpHttpSession;
|
LPWININETHTTPSESSIONW lpwhs = lpwhr->lpHttpSession;
|
||||||
LPWININETAPPINFOW hIC = lpwhs->lpAppInfo;
|
LPWININETAPPINFOW hIC = lpwhs->lpAppInfo;
|
||||||
BOOL using_proxy = hIC->lpszProxy && hIC->lpszProxy[0];
|
BOOL using_proxy = hIC->lpszProxy && hIC->lpszProxy[0];
|
||||||
WCHAR path[INTERNET_MAX_URL_LENGTH];
|
WCHAR path[INTERNET_MAX_URL_LENGTH];
|
||||||
|
int index;
|
||||||
|
|
||||||
if(lpszUrl[0]=='/')
|
if(lpszUrl[0]=='/')
|
||||||
{
|
{
|
||||||
@ -3051,6 +3054,14 @@ static BOOL HTTP_HandleRedirect(LPWININETHTTPREQW lpwhr, LPCWSTR lpszUrl)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Remove custom content-type/length headers on redirects. */
|
||||||
|
index = HTTP_GetCustomHeaderIndex(lpwhr, szContentType, 0, TRUE);
|
||||||
|
if (0 <= index)
|
||||||
|
HTTP_DeleteCustomHeader(lpwhr, index);
|
||||||
|
index = HTTP_GetCustomHeaderIndex(lpwhr, szContentLength, 0, TRUE);
|
||||||
|
if (0 <= index)
|
||||||
|
HTTP_DeleteCustomHeader(lpwhr, index);
|
||||||
|
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user