https://git.reactos.org/?p=reactos.git;a=commitdiff;h=a5313181565b67b6be002f...
commit a5313181565b67b6be002fb2d7243f858c3741e7 Author: Amine Khaldi amine.khaldi@reactos.org AuthorDate: Thu Mar 8 13:39:19 2018 +0100 Commit: Amine Khaldi amine.khaldi@reactos.org CommitDate: Thu Mar 8 13:39:19 2018 +0100
[DPLAYX] Sync with Wine Staging 3.3. CORE-14434 --- dll/directx/wine/dplayx/CMakeLists.txt | 4 ++-- dll/directx/wine/dplayx/dpclassfactory.c | 19 ++++++++++++++++++- dll/directx/wine/dplayx/dplay.c | 24 ++++++++++++++++++++++++ dll/directx/wine/dplayx/dplay_global.h | 8 ++++++++ dll/directx/wine/dplayx/dplaysp.c | 13 ++++++++++++- dll/directx/wine/dplayx/dplayx_global.c | 17 +++++++++++++++++ dll/directx/wine/dplayx/dplayx_global.h | 29 ++++------------------------- dll/directx/wine/dplayx/dplayx_main.c | 11 +++++++++-- dll/directx/wine/dplayx/dplayx_messages.c | 14 ++++++++++++++ dll/directx/wine/dplayx/dplayx_messages.h | 15 ++++++++++++--- dll/directx/wine/dplayx/dplayx_queue.h | 5 +++++ dll/directx/wine/dplayx/dplobby.c | 17 +++++++++++++++++ dll/directx/wine/dplayx/lobbysp.c | 7 ++++++- dll/directx/wine/dplayx/lobbysp.h | 9 ++++++++- dll/directx/wine/dplayx/name_server.c | 20 ++++++++++++++++++-- dll/directx/wine/dplayx/name_server.h | 9 +++++++++ dll/directx/wine/dplayx/precomp.h | 23 +++++++++++++++++++++++ media/doc/README.WINE | 2 +- 18 files changed, 207 insertions(+), 39 deletions(-)
diff --git a/dll/directx/wine/dplayx/CMakeLists.txt b/dll/directx/wine/dplayx/CMakeLists.txt index bf9a7ed46c..867ba69001 100644 --- a/dll/directx/wine/dplayx/CMakeLists.txt +++ b/dll/directx/wine/dplayx/CMakeLists.txt @@ -16,7 +16,7 @@ list(APPEND SOURCE dplobby.c lobbysp.c name_server.c - dplayx_global.h) + precomp.h)
add_library(dplayx SHARED ${SOURCE} @@ -26,5 +26,5 @@ add_library(dplayx SHARED set_module_type(dplayx win32dll) target_link_libraries(dplayx dxguid uuid wine) add_importlibs(dplayx winmm ole32 user32 advapi32 msvcrt kernel32 ntdll) -add_pch(dplayx dplayx_global.h SOURCE) +add_pch(dplayx precomp.h SOURCE) add_cd_file(TARGET dplayx DESTINATION reactos/system32 FOR all) diff --git a/dll/directx/wine/dplayx/dpclassfactory.c b/dll/directx/wine/dplayx/dpclassfactory.c index e2300dd5c2..6accab68d7 100644 --- a/dll/directx/wine/dplayx/dpclassfactory.c +++ b/dll/directx/wine/dplayx/dpclassfactory.c @@ -17,7 +17,24 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */
-#include "dplayx_global.h" +#include <stdarg.h> +#include <string.h> + +#define COBJMACROS + +#include "windef.h" +#include "winbase.h" +#include "winuser.h" +#include "objbase.h" +#include "winerror.h" +#include "wine/debug.h" +#include "dplay.h" +#include "dplobby.h" +#include "initguid.h" +#include "dplay_global.h" + +WINE_DEFAULT_DEBUG_CHANNEL(dplay); +
typedef struct { diff --git a/dll/directx/wine/dplayx/dplay.c b/dll/directx/wine/dplayx/dplay.c index a08c13e600..fde068138e 100644 --- a/dll/directx/wine/dplayx/dplay.c +++ b/dll/directx/wine/dplayx/dplay.c @@ -17,7 +17,31 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */
+#define COBJMACROS +#include "config.h" +#include "wine/port.h" + +#include <stdarg.h> +#include <string.h> + +#define NONAMELESSUNION + +#include "windef.h" +#include "winerror.h" +#include "winbase.h" +#include "winnt.h" +#include "winreg.h" +#include "winnls.h" +#include "wine/unicode.h" +#include "wine/debug.h" + #include "dplayx_global.h" +#include "name_server.h" +#include "dplayx_queue.h" +#include "wine/dplaysp.h" +#include "dplay_global.h" + +WINE_DEFAULT_DEBUG_CHANNEL(dplay);
/* FIXME: Should this be externed? */ extern HRESULT DPL_CreateCompoundAddress diff --git a/dll/directx/wine/dplayx/dplay_global.h b/dll/directx/wine/dplayx/dplay_global.h index f5473d0f43..7def46bc2d 100644 --- a/dll/directx/wine/dplayx/dplay_global.h +++ b/dll/directx/wine/dplayx/dplay_global.h @@ -19,6 +19,14 @@ #ifndef __WINE_DPLAY_GLOBAL_INCLUDED #define __WINE_DPLAY_GLOBAL_INCLUDED
+#include <stdarg.h> + +#include "windef.h" +#include "winbase.h" +#include "wine/dplaysp.h" +#include "lobbysp.h" +#include "dplayx_queue.h" + extern HRESULT DPL_EnumAddress( LPDPENUMADDRESSCALLBACK lpEnumAddressCallback, LPCVOID lpAddress, DWORD dwAddressSize, LPVOID lpContext ) DECLSPEC_HIDDEN; diff --git a/dll/directx/wine/dplayx/dplaysp.c b/dll/directx/wine/dplayx/dplaysp.c index 2322a311d0..43938e8511 100644 --- a/dll/directx/wine/dplayx/dplaysp.c +++ b/dll/directx/wine/dplayx/dplaysp.c @@ -18,10 +18,21 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */
-#include "dplayx_global.h" +#include <string.h> +#include "winerror.h" +#include "wine/debug.h" + +#include "wine/dplaysp.h" +#include "dplay_global.h" +#include "name_server.h" +#include "dplayx_messages.h" + +#include "dplayx_global.h" /* FIXME: For global hack */
/* FIXME: Need to add interface locking inside procedures */
+WINE_DEFAULT_DEBUG_CHANNEL(dplay); + typedef struct IDirectPlaySPImpl { IDirectPlaySP IDirectPlaySP_iface; diff --git a/dll/directx/wine/dplayx/dplayx_global.c b/dll/directx/wine/dplayx/dplayx_global.c index dcc021a6e4..14c53a0c8d 100644 --- a/dll/directx/wine/dplayx/dplayx_global.c +++ b/dll/directx/wine/dplayx/dplayx_global.c @@ -29,7 +29,24 @@ * */
+#include <stdarg.h> +#include <string.h> + +#define NONAMELESSUNION + +#include "wine/debug.h" +#include "windef.h" +#include "winbase.h" +#include "winerror.h" +#include "wine/unicode.h" + +#include "wingdi.h" +#include "winuser.h" + #include "dplayx_global.h" +#include "dplayx_messages.h" /* For CreateMessageReceptionThread only */ + +WINE_DEFAULT_DEBUG_CHANNEL(dplay);
/* FIXME: Need to do all that fun other dll referencing type of stuff */
diff --git a/dll/directx/wine/dplayx/dplayx_global.h b/dll/directx/wine/dplayx/dplayx_global.h index e388e077f6..848771bced 100644 --- a/dll/directx/wine/dplayx/dplayx_global.h +++ b/dll/directx/wine/dplayx/dplayx_global.h @@ -19,33 +19,12 @@ #ifndef __WINE_DPLAYX_GLOBAL #define __WINE_DPLAYX_GLOBAL
-#include <wine/config.h> - #include <stdarg.h>
-#define WIN32_NO_STATUS -#define _INC_WINDOWS - -#define COBJMACROS -#define NONAMELESSUNION -#define NONAMELESSSTRUCT - -#include <windef.h> -#include <winbase.h> -#include <winreg.h> -#include <dplay.h> - -#include <wine/debug.h> -#include <wine/unicode.h> - -#include "dplaysp.h" -#include "lobbysp.h" -#include "dplayx_queue.h" -#include "dplay_global.h" -#include "dplayx_messages.h" -#include "name_server.h" - -WINE_DEFAULT_DEBUG_CHANNEL(dplay); +#include "windef.h" +#include "winbase.h" +#include "winuser.h" +#include "dplay.h"
BOOL DPLAYX_ConstructData(void) DECLSPEC_HIDDEN; BOOL DPLAYX_DestructData(void) DECLSPEC_HIDDEN; diff --git a/dll/directx/wine/dplayx/dplayx_main.c b/dll/directx/wine/dplayx/dplayx_main.c index 423ee70ead..b1076ff2f6 100644 --- a/dll/directx/wine/dplayx/dplayx_main.c +++ b/dll/directx/wine/dplayx/dplayx_main.c @@ -56,10 +56,17 @@ * client. Also get rid of offset dependency by making data offset independent * somehow. */ - +#include <stdarg.h> + +#include "winerror.h" +#include "windef.h" +#include "winbase.h" +#include "objbase.h" +#include "rpcproxy.h" +#include "wine/debug.h" #include "dplayx_global.h"
-#include <rpcproxy.h> +WINE_DEFAULT_DEBUG_CHANNEL(dplay);
static HINSTANCE instance;
diff --git a/dll/directx/wine/dplayx/dplayx_messages.c b/dll/directx/wine/dplayx/dplayx_messages.c index 8318d4adfa..6f6636c4b9 100644 --- a/dll/directx/wine/dplayx/dplayx_messages.c +++ b/dll/directx/wine/dplayx/dplayx_messages.c @@ -20,7 +20,21 @@ * o Messaging interface required for both DirectPlay and DirectPlayLobby. */
+#include <stdarg.h> +#include <string.h> +#include "windef.h" +#include "winbase.h" +#include "wingdi.h" +#include "winuser.h" +#include "winerror.h" + +#include "dplayx_messages.h" +#include "dplay_global.h" #include "dplayx_global.h" +#include "name_server.h" +#include "wine/debug.h" + +WINE_DEFAULT_DEBUG_CHANNEL(dplay);
typedef struct tagMSGTHREADINFO { diff --git a/dll/directx/wine/dplayx/dplayx_messages.h b/dll/directx/wine/dplayx/dplayx_messages.h index 755f8bec6f..c6f7f8af57 100644 --- a/dll/directx/wine/dplayx/dplayx_messages.h +++ b/dll/directx/wine/dplayx/dplayx_messages.h @@ -19,6 +19,15 @@ #ifndef __WINE_DPLAYX_MESSAGES__ #define __WINE_DPLAYX_MESSAGES__
+#include <stdarg.h> + +#include "windef.h" +#include "winbase.h" +#include "dplay.h" +#include "rpc.h" /* For GUID */ + +#include "dplay_global.h" + DWORD CreateLobbyMessageReceptionThread( HANDLE hNotifyEvent, HANDLE hStart, HANDLE hDeath, HANDLE hConnRead ) DECLSPEC_HIDDEN;
@@ -39,7 +48,7 @@ void DP_MSG_ToSelf( IDirectPlayImpl *This, DPID dpidSelf ) DECLSPEC_HIDDEN; #define DPMSG_DEFAULT_WAIT_TIME DPMSG_WAIT_30_SECS
/* Message types etc. */ -#include <pshpack1.h> +#include "pshpack1.h"
/* Non provided messages for DPLAY - guess work which may be wrong :( */ #define DPMSGCMD_ENUMSESSIONSREPLY 1 @@ -209,6 +218,6 @@ typedef struct tagDPMSG_FORWARDADDPLAYERNACK } DPMSG_FORWARDADDPLAYERNACK, *LPDPMSG_FORWARDADDPLAYERNACK; typedef const DPMSG_FORWARDADDPLAYERNACK* LPCDPMSG_FORWARDADDPLAYERNACK;
-#include <poppack.h> +#include "poppack.h"
-#endif /* __WINE_DPLAYX_MESSAGES__ */ +#endif diff --git a/dll/directx/wine/dplayx/dplayx_queue.h b/dll/directx/wine/dplayx/dplayx_queue.h index 3cd4f0be5f..e704d9a707 100644 --- a/dll/directx/wine/dplayx/dplayx_queue.h +++ b/dll/directx/wine/dplayx/dplayx_queue.h @@ -26,6 +26,11 @@ #ifndef __WINE_DPLAYX_QUEUE_H #define __WINE_DPLAYX_QUEUE_H
+#include <stdarg.h> + +#include "windef.h" +#include "winbase.h" + #define DPQ_INSERT(a,b,c) DPQ_INSERT_IN_TAIL(a,b,c)
/* diff --git a/dll/directx/wine/dplayx/dplobby.c b/dll/directx/wine/dplayx/dplobby.c index 58536d8766..944fea9ec6 100644 --- a/dll/directx/wine/dplayx/dplobby.c +++ b/dll/directx/wine/dplayx/dplobby.c @@ -16,8 +16,25 @@ * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */ +#include <stdarg.h> +#include <string.h> + +#define COBJMACROS +#define NONAMELESSUNION + +#include "windef.h" +#include "winbase.h" +#include "winerror.h" +#include "winreg.h" +#include "winnls.h" +#include "wine/debug.h"
#include "dplayx_global.h" +#include "dplayx_messages.h" +#include "dplayx_queue.h" +#include "dplobby.h" + +WINE_DEFAULT_DEBUG_CHANNEL(dplay);
/* Forward declarations for this module helper methods */ HRESULT DPL_CreateCompoundAddress ( LPCDPCOMPOUNDADDRESSELEMENT lpElements, DWORD dwElementCount, diff --git a/dll/directx/wine/dplayx/lobbysp.c b/dll/directx/wine/dplayx/lobbysp.c index 7b1da09cf1..3528f94e34 100644 --- a/dll/directx/wine/dplayx/lobbysp.c +++ b/dll/directx/wine/dplayx/lobbysp.c @@ -18,8 +18,13 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */
-#include "dplayx_global.h" +#include "winerror.h" +#include "wine/debug.h"
+#include "lobbysp.h" +#include "dplay_global.h" + +WINE_DEFAULT_DEBUG_CHANNEL(dplay);
typedef struct IDPLobbySPImpl { diff --git a/dll/directx/wine/dplayx/lobbysp.h b/dll/directx/wine/dplayx/lobbysp.h index 2a214a91df..8d871160b6 100644 --- a/dll/directx/wine/dplayx/lobbysp.h +++ b/dll/directx/wine/dplayx/lobbysp.h @@ -19,6 +19,13 @@ #ifndef __WINE_LOBBY_SP_H #define __WINE_LOBBY_SP_H
+#include <stdarg.h> + +#include "windef.h" +#include "winbase.h" +#include "winuser.h" +#include "dplobby.h" + /* GUID for IDPLobbySP {5A4E5A20-2CED-11d0-A889-00A0C905433C} */ DEFINE_GUID(IID_IDPLobbySP, 0x5a4e5a20, 0x2ced, 0x11d0, 0xa8, 0x89, 0x0, 0xa0, 0xc9, 0x5, 0x43, 0x3c); typedef struct IDPLobbySP *LPDPLOBBYSP; @@ -509,4 +516,4 @@ DECLARE_INTERFACE_(IDPLobbySP,IUnknown) */ extern DWORD gdwDPlaySPRefCount DECLSPEC_HIDDEN;
-#endif /* __WINE_LOBBY_SP_H */ +#endif diff --git a/dll/directx/wine/dplayx/name_server.c b/dll/directx/wine/dplayx/name_server.c index 2566c3699f..7ca1500bfb 100644 --- a/dll/directx/wine/dplayx/name_server.c +++ b/dll/directx/wine/dplayx/name_server.c @@ -19,12 +19,28 @@
/* NOTE: Methods with the NS_ prefix are name server methods */
-#include "dplayx_global.h" +#include <stdarg.h> +#include <string.h> + +#define NONAMELESSUNION
-#include <mmsystem.h> +#include "windef.h" +#include "winbase.h" +#include "winnls.h" +#include "wine/unicode.h" +#include "wine/debug.h" +#include "mmsystem.h" + +#include "dplayx_global.h" +#include "name_server.h" +#include "wine/dplaysp.h" +#include "dplayx_messages.h" +#include "dplayx_queue.h"
/* FIXME: Need to create a crit section, store and use it */
+WINE_DEFAULT_DEBUG_CHANNEL(dplay); + /* NS specific structures */ struct NSCacheData { diff --git a/dll/directx/wine/dplayx/name_server.h b/dll/directx/wine/dplayx/name_server.h index 6213cceef9..2ad012c2fa 100644 --- a/dll/directx/wine/dplayx/name_server.h +++ b/dll/directx/wine/dplayx/name_server.h @@ -19,6 +19,15 @@ #ifndef __WINE_DPLAYX_NAMESERVER #define __WINE_DPLAYX_NAMESERVER
+#include <stdarg.h> + +#include "windef.h" +#include "winbase.h" +#include "dplay.h" +#include "wine/dplaysp.h" +#include "dplayx_messages.h" +#include "dplay_global.h" + void NS_SetLocalComputerAsNameServer( LPCDPSESSIONDESC2 lpsd, LPVOID lpNSInfo ) DECLSPEC_HIDDEN; void NS_AddRemoteComputerAsNameServer( LPCVOID lpNSAddrHdr, DWORD dwHdrSize, diff --git a/dll/directx/wine/dplayx/precomp.h b/dll/directx/wine/dplayx/precomp.h new file mode 100644 index 0000000000..ac5ab0cc8a --- /dev/null +++ b/dll/directx/wine/dplayx/precomp.h @@ -0,0 +1,23 @@ + +#ifndef __WINE_DPLAYX_PRECOMP_H +#define __WINE_DPLAYX_PRECOMP_H + +#include <wine/config.h> + +#define WIN32_NO_STATUS +#define _INC_WINDOWS + +#define COBJMACROS +#define NONAMELESSUNION +#define NONAMELESSSTRUCT + +#include "dplay_global.h" +#include "dplayx_global.h" +#include "dplayx_messages.h" +#include "name_server.h" + +#include <winreg.h> +#include <wine/debug.h> +#include <wine/unicode.h> + +#endif /* !__WINE_DPLAYX_PRECOMP_H */ diff --git a/media/doc/README.WINE b/media/doc/README.WINE index 625b7eb0e9..f03769bea8 100644 --- a/media/doc/README.WINE +++ b/media/doc/README.WINE @@ -34,7 +34,7 @@ reactos/dll/directx/wine/dinput # Synced to WineStaging-3.3 reactos/dll/directx/wine/dinput8 # Synced to WineStaging-3.3 reactos/dll/directx/wine/dmusic # Synced to WineStaging-3.3 reactos/dll/directx/wine/dplay # Synced to WineStaging-3.3 -reactos/dll/directx/wine/dplayx # Synced to WineStaging-2.16 +reactos/dll/directx/wine/dplayx # Synced to WineStaging-3.3 reactos/dll/directx/wine/dsound # Synced to Wine-1.3.29 reactos/dll/directx/wine/dxdiagn # Synced to Wine-3.0 reactos/dll/directx/wine/msdmo # Synced to WineStaging-2.9