From 6a04c99d94e78d57907fb9d8ab3b348fe6970117 Mon Sep 17 00:00:00 2001 From: Ismael Barros Date: Tue, 5 Aug 2008 02:08:44 +0200 Subject: [PATCH] dplayx: Handling for "add forward" and "player enumeration" replies --- dlls/dplayx/dplay.c | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/dlls/dplayx/dplay.c b/dlls/dplayx/dplay.c index fc7b240a6fe..78f6fa7c7e3 100644 --- a/dlls/dplayx/dplay.c +++ b/dlls/dplayx/dplay.c @@ -779,13 +779,30 @@ HRESULT DP_HandleMessage( IDirectPlay2Impl* This, LPCVOID lpcMessageBody, break; } - case DPMSGCMD_SUPERENUMPLAYERSREPLY: + case DPMSGCMD_ADDFORWARDREPLY: { DP_MSG_ReplyReceived( This, wCommandId, lpcMessageHeader, lpcMessageBody, dwMessageBodySize ); break; } + case DPMSGCMD_ENUMPLAYERSREPLY: + case DPMSGCMD_SUPERENUMPLAYERSREPLY: + { + /* If we're joining a session, when we receive this + * command we were waiting for a ADDFORWARDREPLY */ + if ( !DP_MSG_ReplyReceived( This, DPMSGCMD_ADDFORWARDREPLY, + lpcMessageHeader, lpcMessageBody, + dwMessageBodySize ) ) + { + /* If we were not joining a session, check if we are + * waiting for an enumeration of players or groups */ + DP_MSG_ReplyReceived( This, wCommandId, lpcMessageHeader, + lpcMessageBody, dwMessageBodySize ); + } + break; + } + case DPMSGCMD_ADDFORWARDACK: { /* When we receive an ADDFORWARDACK for each of the ADDFORWARDs -- 2.11.4.GIT