[PATCH 1/2] dpnet: Implement IDirectPlay8LobbyClient Initialize
Alistair Leslie-Hughes
leslie_alistair at hotmail.com
Tue Oct 18 02:13:47 CDT 2016
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair at hotmail.com>
---
dlls/dpnet/client.c | 15 +++++++++++++--
dlls/dpnet/tests/client.c | 5 ++++-
2 files changed, 17 insertions(+), 3 deletions(-)
diff --git a/dlls/dpnet/client.c b/dlls/dpnet/client.c
index f865aa7..f6ab0f7 100644
--- a/dlls/dpnet/client.c
+++ b/dlls/dpnet/client.c
@@ -45,6 +45,10 @@ typedef struct IDirectPlay8LobbyClientImpl
{
IDirectPlay8LobbyClient IDirectPlay8LobbyClient_iface;
LONG ref;
+
+ PFNDPNMESSAGEHANDLER msghandler;
+ DWORD flags;
+ void *usercontext;
} IDirectPlay8LobbyClientImpl;
static inline IDirectPlay8LobbyClientImpl *impl_from_IDirectPlay8LobbyClient(IDirectPlay8LobbyClient *iface)
@@ -1093,9 +1097,16 @@ static HRESULT WINAPI lobbyclient_Initialize(IDirectPlay8LobbyClient *iface, voi
{
IDirectPlay8LobbyClientImpl *This = impl_from_IDirectPlay8LobbyClient(iface);
- FIXME("(%p)->(%p %p 0x%08x)\n", This, context, msghandler, flags);
+ TRACE("(%p):(%p,%p,%x)\n", This, context, msghandler, flags);
- return E_NOTIMPL;
+ if(!msghandler)
+ return E_POINTER;
+
+ This->usercontext = context;
+ This->msghandler = msghandler;
+ This->flags = flags;
+
+ return DPN_OK;
}
static HRESULT WINAPI lobbyclient_EnumLocalPrograms(IDirectPlay8LobbyClient *iface, GUID* guidapplication,
diff --git a/dlls/dpnet/tests/client.c b/dlls/dpnet/tests/client.c
index 723f7be..753d3ad 100644
--- a/dlls/dpnet/tests/client.c
+++ b/dlls/dpnet/tests/client.c
@@ -221,8 +221,11 @@ static void test_lobbyclient(void)
ok(hr == S_OK, "Failed to create object\n");
if(SUCCEEDED(hr))
{
+ hr = IDirectPlay8LobbyClient_Initialize(client, NULL, NULL, 0);
+ ok(hr == E_POINTER, "got 0x%08x\n", hr);
+
hr = IDirectPlay8LobbyClient_Initialize(client, NULL, DirectPlayLobbyClientMessageHandler, 0);
- todo_wine ok(hr == S_OK, "got 0x%08x\n", hr);
+ ok(hr == S_OK, "got 0x%08x\n", hr);
hr = IDirectPlay8LobbyClient_Close(client, 0);
todo_wine ok(hr == S_OK, "got 0x%08x\n", hr);
--
1.9.1
More information about the wine-patches
mailing list