diff --git a/src/joystick/windows/SDL_rawinputjoystick.c b/src/joystick/windows/SDL_rawinputjoystick.c index 3c296b93ac..dc9d7c3653 100644 --- a/src/joystick/windows/SDL_rawinputjoystick.c +++ b/src/joystick/windows/SDL_rawinputjoystick.c @@ -499,7 +499,10 @@ static HRESULT STDMETHODCALLTYPE IEventHandler_CGamepadVtbl_InvokeRemoved(__FIEv return S_OK; } +#ifdef _MSC_VER +#pragma warning(push) #pragma warning(disable : 4028) /* formal parameter 3 different from declaration, when using older buggy WGI headers */ +#endif static __FIEventHandler_1_Windows__CGaming__CInput__CGamepadVtbl gamepad_added_vtbl = { IEventHandler_CGamepadVtbl_QueryInterface, @@ -523,6 +526,10 @@ static GamepadDelegate gamepad_removed = { { 1 } }; +#ifdef _MSC_VER +#pragma warning(pop) +#endif + static void RAWINPUT_MarkWindowsGamingInputSlotUsed(WindowsGamingInputGamepadState *wgi_slot, RAWINPUT_DeviceContext *ctx) { wgi_slot->used = SDL_TRUE; diff --git a/src/joystick/windows/SDL_windows_gaming_input.c b/src/joystick/windows/SDL_windows_gaming_input.c index 210395a7b0..68c5e37140 100644 --- a/src/joystick/windows/SDL_windows_gaming_input.c +++ b/src/joystick/windows/SDL_windows_gaming_input.c @@ -567,7 +567,10 @@ static HRESULT STDMETHODCALLTYPE IEventHandler_CRawGameControllerVtbl_InvokeRemo return S_OK; } +#ifdef _MSC_VER +#pragma warning(push) #pragma warning(disable : 4028) /* formal parameter 3 different from declaration, when using older buggy WGI headers */ +#endif static __FIEventHandler_1_Windows__CGaming__CInput__CRawGameControllerVtbl controller_added_vtbl = { IEventHandler_CRawGameControllerVtbl_QueryInterface, @@ -591,6 +594,10 @@ static RawGameControllerDelegate controller_removed = { { 1 } }; +#ifdef _MSC_VER +#pragma warning(pop) +#endif + static int WGI_JoystickInit(void) { HRESULT hr;