hnetcfg: Improve INetFwAuthorizedApplication::get_ProcessImageFileName stub.

Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Michael Müller 2018-04-23 02:24:04 +00:00 committed by Alexandre Julliard
parent f82b3e5744
commit 0edc760ddf
1 changed files with 16 additions and 2 deletions

View File

@ -38,6 +38,7 @@ typedef struct fw_app
{ {
INetFwAuthorizedApplication INetFwAuthorizedApplication_iface; INetFwAuthorizedApplication INetFwAuthorizedApplication_iface;
LONG refs; LONG refs;
BSTR filename;
} fw_app; } fw_app;
static inline fw_app *impl_from_INetFwAuthorizedApplication( INetFwAuthorizedApplication *iface ) static inline fw_app *impl_from_INetFwAuthorizedApplication( INetFwAuthorizedApplication *iface )
@ -60,6 +61,7 @@ static ULONG WINAPI fw_app_Release(
if (!refs) if (!refs)
{ {
TRACE("destroying %p\n", fw_app); TRACE("destroying %p\n", fw_app);
SysFreeString( fw_app->filename );
HeapFree( GetProcessHeap(), 0, fw_app ); HeapFree( GetProcessHeap(), 0, fw_app );
} }
return refs; return refs;
@ -252,7 +254,12 @@ static HRESULT WINAPI fw_app_get_ProcessImageFileName(
fw_app *This = impl_from_INetFwAuthorizedApplication( iface ); fw_app *This = impl_from_INetFwAuthorizedApplication( iface );
FIXME("%p, %p\n", This, imageFileName); FIXME("%p, %p\n", This, imageFileName);
return E_NOTIMPL;
if (!imageFileName)
return E_POINTER;
*imageFileName = SysAllocString( This->filename );
return *imageFileName || !This->filename ? S_OK : E_OUTOFMEMORY;
} }
static HRESULT WINAPI fw_app_put_ProcessImageFileName( static HRESULT WINAPI fw_app_put_ProcessImageFileName(
@ -262,7 +269,13 @@ static HRESULT WINAPI fw_app_put_ProcessImageFileName(
fw_app *This = impl_from_INetFwAuthorizedApplication( iface ); fw_app *This = impl_from_INetFwAuthorizedApplication( iface );
FIXME("%p, %s\n", This, debugstr_w(imageFileName)); FIXME("%p, %s\n", This, debugstr_w(imageFileName));
return S_OK;
if (!imageFileName || !imageFileName[0])
return E_INVALIDARG;
SysFreeString( This->filename );
This->filename = SysAllocString( imageFileName );
return This->filename ? S_OK : E_OUTOFMEMORY;
} }
static HRESULT WINAPI fw_app_get_IpVersion( static HRESULT WINAPI fw_app_get_IpVersion(
@ -385,6 +398,7 @@ HRESULT NetFwAuthorizedApplication_create( IUnknown *pUnkOuter, LPVOID *ppObj )
fa->INetFwAuthorizedApplication_iface.lpVtbl = &fw_app_vtbl; fa->INetFwAuthorizedApplication_iface.lpVtbl = &fw_app_vtbl;
fa->refs = 1; fa->refs = 1;
fa->filename = NULL;
*ppObj = &fa->INetFwAuthorizedApplication_iface; *ppObj = &fa->INetFwAuthorizedApplication_iface;