[PATCH 43/54] dplayx: Merge the IDirectPlay4_GetMessageQueue helper.

Michael Stefaniuc mstefani at redhat.de
Fri Mar 29 11:06:39 CDT 2013


---
 dlls/dplayx/dplay.c | 80 +++++++++++++++++++++--------------------------------
 1 file changed, 31 insertions(+), 49 deletions(-)

diff --git a/dlls/dplayx/dplay.c b/dlls/dplayx/dplay.c
index 91becd8..b0eb731 100644
--- a/dlls/dplayx/dplay.c
+++ b/dlls/dplayx/dplay.c
@@ -116,9 +116,6 @@ static HRESULT DP_SecureOpen
 static HRESULT DP_IF_Receive
           ( IDirectPlay2Impl* This, LPDPID lpidFrom, LPDPID lpidTo,
             DWORD dwFlags, LPVOID lpData, LPDWORD lpdwDataSize, BOOL bAnsi );
-static HRESULT DP_IF_GetMessageQueue
-          ( IDirectPlay4Impl* This, DPID idFrom, DPID idTo, DWORD dwFlags,
-            LPDWORD lpdwNumMsgs, LPDWORD lpdwNumBytes, BOOL bAnsi );
 static HRESULT DP_SP_SendEx
           ( IDirectPlay2Impl* This, DWORD dwFlags,
             LPVOID lpData, DWORD dwDataSize, DWORD dwPriority, DWORD dwTimeout,
@@ -3981,59 +3978,44 @@ static HRESULT DP_SP_SendEx
   return DP_OK;
 }
 
-static HRESULT DP_IF_GetMessageQueue
-          ( IDirectPlay4Impl* This, DPID idFrom, DPID idTo, DWORD dwFlags,
-            LPDWORD lpdwNumMsgs, LPDWORD lpdwNumBytes, BOOL bAnsi )
+static HRESULT WINAPI IDirectPlay4AImpl_GetMessageQueue( IDirectPlay4A *iface, DPID from, DPID to,
+        DWORD flags, DWORD *msgs, DWORD *bytes )
 {
-  HRESULT hr = DP_OK;
-
-  FIXME( "(%p)->(0x%08x,0x%08x,0x%08x,%p,%p,%u): semi stub\n",
-         This, idFrom, idTo, dwFlags, lpdwNumMsgs, lpdwNumBytes, bAnsi );
-
-  /* FIXME: Do we need to do idFrom and idTo sanity checking here? */
-  /* FIXME: What about sends which are not immediate? */
+    IDirectPlayImpl *This = impl_from_IDirectPlay4A( iface );
+    return IDirectPlayX_GetMessageQueue( &This->IDirectPlay4_iface, from, to, flags, msgs, bytes );
+}
 
-  if( This->dp2->spData.lpCB->GetMessageQueue )
-  {
-    DPSP_GETMESSAGEQUEUEDATA data;
+static HRESULT WINAPI IDirectPlay4Impl_GetMessageQueue( IDirectPlay4 *iface, DPID from, DPID to,
+        DWORD flags, DWORD *msgs, DWORD *bytes )
+{
+    IDirectPlayImpl *This = impl_from_IDirectPlay4( iface );
+    HRESULT hr = DP_OK;
 
-    FIXME( "Calling SP GetMessageQueue - is it right?\n" );
+    FIXME( "(%p)->(0x%08x,0x%08x,0x%08x,%p,%p): semi-stub\n", This, from, to, flags, msgs, bytes );
 
-    /* FIXME: None of this is documented :( */
+    /* FIXME: Do we need to do from and to sanity checking here? */
+    /* FIXME: What about sends which are not immediate? */
 
-    data.lpISP        = This->dp2->spData.lpISP;
-    data.dwFlags      = dwFlags;
-    data.idFrom       = idFrom;
-    data.idTo         = idTo;
-    data.lpdwNumMsgs  = lpdwNumMsgs;
-    data.lpdwNumBytes = lpdwNumBytes;
+    if ( This->dp2->spData.lpCB->GetMessageQueue )
+    {
+        DPSP_GETMESSAGEQUEUEDATA data;
 
-    hr = (*This->dp2->spData.lpCB->GetMessageQueue)( &data );
-  }
-  else
-  {
-    FIXME( "No SP for GetMessageQueue - fake some data\n" );
-  }
+        FIXME( "Calling SP GetMessageQueue - is it right?\n" );
 
-  return hr;
-}
+        /* FIXME: None of this is documented :( */
+        data.lpISP        = This->dp2->spData.lpISP;
+        data.dwFlags      = flags;
+        data.idFrom       = from;
+        data.idTo         = to;
+        data.lpdwNumMsgs  = msgs;
+        data.lpdwNumBytes = bytes;
 
-static HRESULT WINAPI DirectPlay4AImpl_GetMessageQueue
-          ( LPDIRECTPLAY4A iface, DPID idFrom, DPID idTo, DWORD dwFlags,
-            LPDWORD lpdwNumMsgs, LPDWORD lpdwNumBytes )
-{
-  IDirectPlayImpl *This = impl_from_IDirectPlay4A( iface );
-  return DP_IF_GetMessageQueue( This, idFrom, idTo, dwFlags, lpdwNumMsgs,
-                                lpdwNumBytes, TRUE );
-}
+        hr = (*This->dp2->spData.lpCB->GetMessageQueue)( &data );
+    }
+    else
+        FIXME( "No SP for GetMessageQueue - fake some data\n" );
 
-static HRESULT WINAPI DirectPlay4WImpl_GetMessageQueue
-          ( LPDIRECTPLAY4 iface, DPID idFrom, DPID idTo, DWORD dwFlags,
-            LPDWORD lpdwNumMsgs, LPDWORD lpdwNumBytes )
-{
-  IDirectPlay4Impl *This = (IDirectPlay4Impl *)iface;
-  return DP_IF_GetMessageQueue( This, idFrom, idTo, dwFlags, lpdwNumMsgs,
-                                lpdwNumBytes, FALSE );
+    return hr;
 }
 
 static HRESULT DP_IF_CancelMessage
@@ -4190,7 +4172,7 @@ static const IDirectPlay4Vtbl dp4_vt =
     IDirectPlay4Impl_GetGroupOwner,
     IDirectPlay4Impl_SetGroupOwner,
     IDirectPlay4Impl_SendEx,
-  DirectPlay4WImpl_GetMessageQueue,
+    IDirectPlay4Impl_GetMessageQueue,
   DirectPlay4WImpl_CancelMessage,
   DirectPlay4WImpl_CancelPriority
 };
@@ -4249,7 +4231,7 @@ static const IDirectPlay4Vtbl dp4A_vt =
   DirectPlay4AImpl_GetGroupOwner,
   DirectPlay4AImpl_SetGroupOwner,
     IDirectPlay4AImpl_SendEx,
-  DirectPlay4AImpl_GetMessageQueue,
+    IDirectPlay4AImpl_GetMessageQueue,
   DirectPlay4AImpl_CancelMessage,
   DirectPlay4AImpl_CancelPriority
 };
-- 
1.7.11.7



More information about the wine-patches mailing list