dpnet: Implement IDirectPlay8LobbiedApplication Initialize

Alistair Leslie-Hughes leslie_alistair at hotmail.com
Thu May 1 00:42:14 CDT 2014


Hi,

Changelog:
       dpnet: Implement IDirectPlay8LobbiedApplication Initialize


Best Regards
   Alistair Leslie-Hughes
-------------- next part --------------
>From 4e5deb74724d2c29e504484551f4a619ba67b107 Mon Sep 17 00:00:00 2001
From: Alistair Leslie-Hughes <leslie_alistair at hotmail.com>
Date: Fri, 14 Feb 2014 14:53:40 +1100
Subject: [PATCH] Implement IDirectPlay8LobbiedApplication Initialize
To: wine-patches <wine-patches at winehq.org>

---
 dlls/dpnet/dpnet_private.h |  9 +++++++--
 dlls/dpnet/lobbiedapp.c    | 21 ++++++++++++++++++---
 2 files changed, 25 insertions(+), 5 deletions(-)

diff --git a/dlls/dpnet/dpnet_private.h b/dlls/dpnet/dpnet_private.h
index cfd4453..533d700 100644
--- a/dlls/dpnet/dpnet_private.h
+++ b/dlls/dpnet/dpnet_private.h
@@ -96,8 +96,13 @@ struct IDirectPlay8AddressImpl
  */
 struct IDirectPlay8LobbiedApplicationImpl
 {
-  IDirectPlay8LobbiedApplication IDirectPlay8LobbiedApplication_iface;
-  LONG ref;
+    IDirectPlay8LobbiedApplication IDirectPlay8LobbiedApplication_iface;
+    LONG ref;
+
+    PFNDPNMESSAGEHANDLER msghandler;
+    DWORD flags;
+    void *usercontext;
+    DPNHANDLE *connection;
 };
 
 /*****************************************************************************
diff --git a/dlls/dpnet/lobbiedapp.c b/dlls/dpnet/lobbiedapp.c
index b430776..9947955 100644
--- a/dlls/dpnet/lobbiedapp.c
+++ b/dlls/dpnet/lobbiedapp.c
@@ -89,9 +89,19 @@ static HRESULT WINAPI IDirectPlay8LobbiedApplicationImpl_Initialize(IDirectPlay8
         void * const pvUserContext, const PFNDPNMESSAGEHANDLER pfn,
         DPNHANDLE * const pdpnhConnection, const DWORD dwFlags)
 {
-  IDirectPlay8LobbiedApplicationImpl *This = impl_from_IDirectPlay8LobbiedApplication(iface);
-  FIXME("(%p): stub\n", This);
-  return DPN_OK;
+    IDirectPlay8LobbiedApplicationImpl *This = impl_from_IDirectPlay8LobbiedApplication(iface);
+
+    TRACE("(%p)->(%p %p %p %x)\n", This, pvUserContext, pfn, pdpnhConnection, dwFlags);
+
+    if(!pfn)
+        return DPNERR_INVALIDPARAM;
+
+    This->msghandler = pfn;
+    This->flags = dwFlags;
+    This->usercontext = pvUserContext;
+    This->connection = pdpnhConnection;
+
+    return DPN_OK;
 }
 
 static HRESULT WINAPI IDirectPlay8LobbiedApplicationImpl_RegisterProgram(IDirectPlay8LobbiedApplication *iface,
@@ -191,6 +201,11 @@ HRESULT DPNET_CreateDirectPlay8LobbiedApp(LPCLASSFACTORY iface, LPUNKNOWN punkOu
   }
   app->IDirectPlay8LobbiedApplication_iface.lpVtbl = &DirectPlay8LobbiedApplication_Vtbl;
   app->ref = 0;
+  app->msghandler = NULL;
+  app->flags = 0;
+  app->usercontext = NULL;
+  app->connection = NULL;
+
   return IDirectPlay8LobbiedApplicationImpl_QueryInterface(&app->IDirectPlay8LobbiedApplication_iface,
           riid, ppobj);
 }
-- 
1.9.1



More information about the wine-patches mailing list