From c0c9eb590845607973d1f0de018564ef70bfc414 Mon Sep 17 00:00:00 2001 From: Biswapriyo Nath Date: Mon, 24 May 2021 10:53:49 +0530 Subject: [PATCH] Check MINGW32 for duplicate type declaration. --- include/freerdp/channels/rdpdr.h | 2 ++ include/freerdp/codec/audio.h | 2 ++ include/freerdp/rail.h | 2 +- include/freerdp/server/rdpdr.h | 2 ++ server/Windows/wf_wasapi.c | 4 +++- winpr/include/winpr/intrin.h | 2 +- winpr/include/winpr/nt.h | 6 +++++- 7 files changed, 16 insertions(+), 4 deletions(-) diff --git a/include/freerdp/channels/rdpdr.h b/include/freerdp/channels/rdpdr.h index b61a4c7e1..07af2600f 100644 --- a/include/freerdp/channels/rdpdr.h +++ b/include/freerdp/channels/rdpdr.h @@ -298,6 +298,7 @@ enum FILE_FS_DEVICE_FLAG FILE_DEVICE_SECURE_OPEN = 0x00000100 }; +#ifndef __MINGW32__ enum FILE_FS_INFORMATION_CLASS { FileFsVolumeInformation = 1, @@ -311,6 +312,7 @@ enum FILE_FS_INFORMATION_CLASS FileFsDriverPathInformation, FileFsMaximumInformation }; +#endif typedef struct _DEVICE DEVICE; typedef struct _IRP IRP; diff --git a/include/freerdp/codec/audio.h b/include/freerdp/codec/audio.h index e9c0408e8..820758268 100644 --- a/include/freerdp/codec/audio.h +++ b/include/freerdp/codec/audio.h @@ -69,6 +69,7 @@ typedef struct AUDIO_FORMAT AUDIO_FORMAT; * http://tools.ietf.org/html/rfc2361 */ +#ifndef __MINGW32__ #define WAVE_FORMAT_UNKNOWN 0x0000 #ifndef WAVE_FORMAT_PCM @@ -183,6 +184,7 @@ typedef struct AUDIO_FORMAT AUDIO_FORMAT; #define WAVE_FORMAT_NORRIS 0x1400 #define WAVE_FORMAT_SOUNDSPACE_MUSICOMPRESS 0x1500 #define WAVE_FORMAT_DVM 0x2000 +#endif /* !__MINGW32__ */ #define WAVE_FORMAT_AAC_MS 0xA106 /** diff --git a/include/freerdp/rail.h b/include/freerdp/rail.h index 961ea8f8f..8f531fbb7 100644 --- a/include/freerdp/rail.h +++ b/include/freerdp/rail.h @@ -246,7 +246,7 @@ enum SPI_MASK #define IME_STATE_OPEN 0x00000001 /* ImeConvMode */ -#ifndef _IME_CMODES_ +#if !defined(_IME_CMODES_) && !defined(__MINGW32__) #define IME_CMODE_NATIVE 0x00000001 #define IME_CMODE_KATAKANA 0x00000002 #define IME_CMODE_FULLSHAPE 0x00000008 diff --git a/include/freerdp/server/rdpdr.h b/include/freerdp/server/rdpdr.h index 63ddca564..72ed0ab2f 100644 --- a/include/freerdp/server/rdpdr.h +++ b/include/freerdp/server/rdpdr.h @@ -35,6 +35,7 @@ typedef struct _rdpdr_server_context RdpdrServerContext; typedef struct _rdpdr_server_private RdpdrServerPrivate; +#ifndef __MINGW32__ struct _FILE_DIRECTORY_INFORMATION { UINT32 NextEntryOffset; @@ -49,6 +50,7 @@ struct _FILE_DIRECTORY_INFORMATION char FileName[512]; }; typedef struct _FILE_DIRECTORY_INFORMATION FILE_DIRECTORY_INFORMATION; +#endif typedef UINT (*psRdpdrStart)(RdpdrServerContext* context); typedef UINT (*psRdpdrStop)(RdpdrServerContext* context); diff --git a/server/Windows/wf_wasapi.c b/server/Windows/wf_wasapi.c index 9a9dca1c1..aa7dcd1af 100644 --- a/server/Windows/wf_wasapi.c +++ b/server/Windows/wf_wasapi.c @@ -18,6 +18,7 @@ //#define REFTIMES_PER_SEC 50000 //#define REFTIMES_PER_MILLISEC 50 +#ifndef __MINGW32__ DEFINE_GUID(CLSID_MMDeviceEnumerator, 0xBCDE0395, 0xE52F, 0x467C, 0x8E, 0x3D, 0xC4, 0x57, 0x92, 0x91, 0x69, 0x2E); DEFINE_GUID(IID_IMMDeviceEnumerator, 0xA95664D2, 0x9614, 0x4F35, 0xA7, 0x46, 0xDE, 0x8D, 0xB6, 0x36, @@ -26,6 +27,7 @@ DEFINE_GUID(IID_IAudioClient, 0x1cb9ad4c, 0xdbfa, 0x4c32, 0xb1, 0x78, 0xc2, 0xf5 0xb2); DEFINE_GUID(IID_IAudioCaptureClient, 0xc8adbd64, 0xe71e, 0x48a0, 0xa4, 0xde, 0x18, 0x5c, 0x39, 0x5c, 0xd3, 0x17); +#endif LPWSTR devStr = NULL; wfPeerContext* latestPeer = NULL; @@ -162,7 +164,7 @@ int wf_wasapi_get_device_string(LPWSTR pattern, LPWSTR* deviceStr) return 0; } -static DWORD WINAPI wf_rdpsnd_wasapi_thread(LPVOID lpParam) +DWORD WINAPI wf_rdpsnd_wasapi_thread(LPVOID lpParam) { IMMDeviceEnumerator* pEnumerator = NULL; IMMDevice* pDevice = NULL; diff --git a/winpr/include/winpr/intrin.h b/winpr/include/winpr/intrin.h index 53f6b346a..b6c3a48ce 100644 --- a/winpr/include/winpr/intrin.h +++ b/winpr/include/winpr/intrin.h @@ -22,7 +22,7 @@ #ifndef WINPR_INTRIN_H #define WINPR_INTRIN_H -#ifndef _WIN32 +#if !defined(_WIN32) || defined(__MINGW32__) /** * __lzcnt16, __lzcnt, __lzcnt64: diff --git a/winpr/include/winpr/nt.h b/winpr/include/winpr/nt.h index 0cbcde0be..c58158550 100644 --- a/winpr/include/winpr/nt.h +++ b/winpr/include/winpr/nt.h @@ -1267,7 +1267,7 @@ static INLINE NTSTATUS NTSTATUS_FROM_WIN32(long x) } #endif -#ifdef _WIN32 +#if defined(_WIN32) && !defined(__MINGW32__) /** * winternl.h contains an incomplete definition of enum FILE_INFORMATION_CLASS @@ -1288,8 +1288,11 @@ static INLINE NTSTATUS NTSTATUS_FROM_WIN32(long x) #undef _FILE_INFORMATION_CLASS #undef FileDirectoryInformation +#elif defined(_WIN32) +#include #endif +#ifndef __MINGW32__ typedef enum _FILE_INFORMATION_CLASS { FileDirectoryInformation = 1, @@ -1333,6 +1336,7 @@ typedef enum _FILE_INFORMATION_CLASS FileValidDataLengthInformation, FileShortNameInformation } FILE_INFORMATION_CLASS; +#endif /* !__MINGW32__ */ #if !defined(_WIN32) || defined(_UWP)