From 96c0c6c5d9009969521ee3b3819a8122bf81d81c Mon Sep 17 00:00:00 2001 From: Jacek Caban Date: Sun, 29 Oct 2006 18:52:02 +0100 Subject: [PATCH] wininet: Store WININETAPPINFOW pointer in WININETFTPSESSIONW. --- dlls/wininet/ftp.c | 5 +++++ dlls/wininet/internet.h | 1 + 2 files changed, 6 insertions(+) diff --git a/dlls/wininet/ftp.c b/dlls/wininet/ftp.c index cf37ac80861..9be0e74f7de 100644 --- a/dlls/wininet/ftp.c +++ b/dlls/wininet/ftp.c @@ -1728,6 +1728,9 @@ HINTERNET FTP_Connect(LPWININETAPPINFOW hIC, LPCWSTR lpszServerName, lpwfs->hdr.lpfnStatusCB = hIC->hdr.lpfnStatusCB; lpwfs->download_in_progress = NULL; + WININET_AddRef( &hIC->hdr ); + lpwfs->lpAppInfo = hIC; + handle = WININET_AllocHandle( &lpwfs->hdr ); if( !handle ) { @@ -2685,6 +2688,8 @@ static void FTP_CloseSessionHandle(LPWININETHANDLEHEADER hdr) TRACE("\n"); + WININET_Release(&lpwfs->lpAppInfo->hdr); + if (lpwfs->download_in_progress != NULL) lpwfs->download_in_progress->session_deleted = TRUE; diff --git a/dlls/wininet/internet.h b/dlls/wininet/internet.h index de53717fa9c..6d2e85725ad 100644 --- a/dlls/wininet/internet.h +++ b/dlls/wininet/internet.h @@ -213,6 +213,7 @@ typedef struct typedef struct { WININETHANDLEHEADER hdr; + WININETAPPINFOW *lpAppInfo; int sndSocket; int lstnSocket; int pasvSocket; /* data socket connected by us in case of passive FTP */