Michael Stefaniuc : dplayx: Merge the IDirectPlay4_AddGroupToGroup helper.

Alexandre Julliard julliard at winehq.org
Tue Apr 2 13:38:35 CDT 2013


Module: wine
Branch: master
Commit: 684a666d23b5f96620239f24d0dfc451d0865c6a
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=684a666d23b5f96620239f24d0dfc451d0865c6a

Author: Michael Stefaniuc <mstefani at redhat.de>
Date:   Fri Mar 29 16:58:20 2013 +0100

dplayx: Merge the IDirectPlay4_AddGroupToGroup helper.

---

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

diff --git a/dlls/dplayx/dplay.c b/dlls/dplayx/dplay.c
index 6372a1e..2236532 100644
--- a/dlls/dplayx/dplay.c
+++ b/dlls/dplayx/dplay.c
@@ -98,8 +98,6 @@ static HRESULT DP_IF_SetGroupName
 static HRESULT DP_IF_SetPlayerName
           ( IDirectPlay2Impl* This, DPID idPlayer, LPDPNAME lpPlayerName,
             DWORD dwFlags, BOOL bAnsi );
-static HRESULT DP_IF_AddGroupToGroup
-          ( IDirectPlay3Impl* This, DPID idParentGroup, DPID idGroup );
 static HRESULT DP_IF_CreateGroup
           ( IDirectPlay2AImpl* This, LPVOID lpMsgHdr, LPDPID lpidGroup,
             LPDPNAME lpGroupName, LPVOID lpData, DWORD dwDataSize,
@@ -2975,62 +2973,47 @@ static void DP_CopySessionDesc( LPDPSESSIONDESC2 lpSessionDest,
   }
 }
 
-
-static HRESULT DP_IF_AddGroupToGroup
-          ( IDirectPlay3Impl* This, DPID idParentGroup, DPID idGroup )
+static HRESULT WINAPI IDirectPlay4AImpl_AddGroupToGroup( IDirectPlay4A *iface, DPID parent,
+        DPID group )
 {
-  lpGroupData lpGData;
-  lpGroupList lpNewGList;
-
-  TRACE( "(%p)->(0x%08x,0x%08x)\n", This, idParentGroup, idGroup );
+    IDirectPlayImpl *This = impl_from_IDirectPlay4A( iface );
+    return IDirectPlayX_AddGroupToGroup( &This->IDirectPlay4_iface, parent, group );
+}
 
-  if( This->dp2->connectionInitialized == NO_PROVIDER )
-  {
-    return DPERR_UNINITIALIZED;
-  }
+static HRESULT WINAPI IDirectPlay4Impl_AddGroupToGroup( IDirectPlay4 *iface, DPID parent,
+        DPID group )
+{
+    IDirectPlayImpl *This = impl_from_IDirectPlay4( iface );
+    lpGroupData gdata;
+    lpGroupList glist;
 
-  if( DP_FindAnyGroup( (IDirectPlay2AImpl*)This, idParentGroup ) == NULL )
-  {
-    return DPERR_INVALIDGROUP;
-  }
+    TRACE( "(%p)->(0x%08x,0x%08x)\n", This, parent, group );
 
-  if( ( lpGData = DP_FindAnyGroup( (IDirectPlay2AImpl*)This, idGroup ) ) == NULL )
-  {
-    return DPERR_INVALIDGROUP;
-  }
+    if ( This->dp2->connectionInitialized == NO_PROVIDER )
+        return DPERR_UNINITIALIZED;
 
-  /* Create a player list (ie "shortcut" ) */
-  lpNewGList = HeapAlloc( GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof( *lpNewGList ) );
-  if( lpNewGList == NULL )
-  {
-    return DPERR_CANTADDPLAYER;
-  }
+    if ( !DP_FindAnyGroup(This, parent ) )
+        return DPERR_INVALIDGROUP;
 
-  /* Add the shortcut */
-  lpGData->uRef++;
-  lpNewGList->lpGData = lpGData;
+    if ( ( gdata = DP_FindAnyGroup(This, group ) ) == NULL )
+        return DPERR_INVALIDGROUP;
 
-  /* Add the player to the list of players for this group */
-  DPQ_INSERT( lpGData->groups, lpNewGList, groups );
+    /* Create a player list (ie "shortcut" ) */
+    glist = HeapAlloc( GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof( *glist ) );
+    if ( !glist )
+        return DPERR_CANTADDPLAYER;
 
-  /* Send a ADDGROUPTOGROUP message */
-  FIXME( "Not sending message\n" );
+    /* Add the shortcut */
+    gdata->uRef++;
+    glist->lpGData = gdata;
 
-  return DP_OK;
-}
+    /* Add the player to the list of players for this group */
+    DPQ_INSERT( gdata->groups, glist, groups );
 
-static HRESULT WINAPI IDirectPlay4AImpl_AddGroupToGroup( IDirectPlay4A *iface, DPID idParentGroup,
-        DPID idGroup )
-{
-  IDirectPlayImpl *This = impl_from_IDirectPlay4A( iface );
-  return DP_IF_AddGroupToGroup( This, idParentGroup, idGroup );
-}
+    /* Send a ADDGROUPTOGROUP message */
+    FIXME( "Not sending message\n" );
 
-static HRESULT WINAPI DirectPlay3WImpl_AddGroupToGroup
-          ( LPDIRECTPLAY3 iface, DPID idParentGroup, DPID idGroup )
-{
-  IDirectPlay3Impl *This = (IDirectPlay3Impl *)iface;
-  return DP_IF_AddGroupToGroup( This, idParentGroup, idGroup );
+    return DP_OK;
 }
 
 static HRESULT DP_IF_CreateGroupInGroup
@@ -4436,8 +4419,7 @@ static const IDirectPlay4Vtbl dp4_vt =
     IDirectPlay4Impl_SetPlayerData,
   XCAST(SetPlayerName)DirectPlay2WImpl_SetPlayerName,
   XCAST(SetSessionDesc)DirectPlay2WImpl_SetSessionDesc,
-
-  XCAST(AddGroupToGroup)DirectPlay3WImpl_AddGroupToGroup,
+    IDirectPlay4Impl_AddGroupToGroup,
   XCAST(CreateGroupInGroup)DirectPlay3WImpl_CreateGroupInGroup,
   XCAST(DeleteGroupFromGroup)DirectPlay3WImpl_DeleteGroupFromGroup,
     IDirectPlay4Impl_EnumConnections,




More information about the wine-cvs mailing list