wininet: Handle NULL req->netconn in INTERNET_DIAGNOSTIC_SOCKET_INFO query.

This commit is contained in:
Piotr Caban 2013-05-03 15:19:11 +02:00 committed by Alexandre Julliard
parent 8328562e4c
commit dd35601b07
2 changed files with 6 additions and 1 deletions

View File

@ -1997,7 +1997,7 @@ static DWORD HTTPREQ_QueryOption(object_header_t *hdr, DWORD option, void *buffe
info->Flags |= IDSI_FLAG_KEEP_ALIVE;
if (req->proxy)
info->Flags |= IDSI_FLAG_PROXY;
if (req->netconn->secure)
if (req->netconn && req->netconn->secure)
info->Flags |= IDSI_FLAG_SECURE;
return ERROR_SUCCESS;

View File

@ -3249,6 +3249,7 @@ static void test_HttpQueryInfo(int port)
static void test_options(int port)
{
INTERNET_DIAGNOSTIC_SOCKET_INFO idsi;
HINTERNET ses, con, req;
DWORD size, error;
DWORD_PTR ctx;
@ -3349,6 +3350,10 @@ static void test_options(int port)
ok(ret, "InternetQueryOption failed %u\n", GetLastError());
ok(ctx == 3, "expected 3 got %lu\n", ctx);
size = sizeof(idsi);
ret = InternetQueryOption(req, INTERNET_OPTION_DIAGNOSTIC_SOCKET_INFO, &idsi, &size);
ok(ret, "InternetQueryOption failed %u\n", GetLastError());
/* INTERNET_OPTION_PROXY */
SetLastError(0xdeadbeef);
ret = InternetQueryOptionA(ses, INTERNET_OPTION_PROXY, NULL, NULL);