Skip to content

Commit

Permalink
Simplify WrapperInterfaceBackup name
Browse files Browse the repository at this point in the history
  • Loading branch information
elishacloud committed Dec 2, 2024
1 parent d3a3878 commit 65d1a0d
Show file tree
Hide file tree
Showing 4 changed files with 49 additions and 43 deletions.
2 changes: 1 addition & 1 deletion BuildNo.rc
Original file line number Diff line number Diff line change
@@ -1 +1 @@
#define BUILD_NUMBER 82
#define BUILD_NUMBER 83
38 changes: 20 additions & 18 deletions IDirectInputDeviceX.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -17,12 +17,14 @@
#include "dinputto8.h"

// Cached wrapper interface
m_IDirectInputDeviceA* DirectInputDeviceWrapperBackupA = nullptr;
m_IDirectInputDeviceW* DirectInputDeviceWrapperBackupW = nullptr;
m_IDirectInputDevice2A* DirectInputDeviceWrapperBackup2A = nullptr;
m_IDirectInputDevice2W* DirectInputDeviceWrapperBackup2W = nullptr;
m_IDirectInputDevice7A* DirectInputDeviceWrapperBackup7A = nullptr;
m_IDirectInputDevice7W* DirectInputDeviceWrapperBackup7W = nullptr;
namespace {
m_IDirectInputDeviceA* WrapperInterfaceBackupA = nullptr;
m_IDirectInputDeviceW* WrapperInterfaceBackupW = nullptr;
m_IDirectInputDevice2A* WrapperInterfaceBackup2A = nullptr;
m_IDirectInputDevice2W* WrapperInterfaceBackup2W = nullptr;
m_IDirectInputDevice7A* WrapperInterfaceBackup7A = nullptr;
m_IDirectInputDevice7W* WrapperInterfaceBackup7W = nullptr;
}

HWND GetMainWindow()
{
Expand Down Expand Up @@ -271,29 +273,29 @@ LPVOID m_IDirectInputDeviceX::GetWrapperInterfaceX(DWORD DirectXVersion)
case 1:
if (StringType == ANSI_CHARSET)
{
return GetInterfaceAddress((m_IDirectInputDeviceA*&)WrapperInterface, DirectInputDeviceWrapperBackupA, (LPDIRECTINPUTDEVICEA)ProxyInterface, this);
return GetInterfaceAddress((m_IDirectInputDeviceA*&)WrapperInterface, WrapperInterfaceBackupA, (LPDIRECTINPUTDEVICEA)ProxyInterface, this);
}
else
{
return GetInterfaceAddress((m_IDirectInputDeviceW*&)WrapperInterface, DirectInputDeviceWrapperBackupW, (LPDIRECTINPUTDEVICEW)ProxyInterface, this);
return GetInterfaceAddress((m_IDirectInputDeviceW*&)WrapperInterface, WrapperInterfaceBackupW, (LPDIRECTINPUTDEVICEW)ProxyInterface, this);
}
case 2:
if (StringType == ANSI_CHARSET)
{
return GetInterfaceAddress((m_IDirectInputDevice2A*&)WrapperInterface2, DirectInputDeviceWrapperBackup2A, (LPDIRECTINPUTDEVICE2A)ProxyInterface, this);
return GetInterfaceAddress((m_IDirectInputDevice2A*&)WrapperInterface2, WrapperInterfaceBackup2A, (LPDIRECTINPUTDEVICE2A)ProxyInterface, this);
}
else
{
return GetInterfaceAddress((m_IDirectInputDevice2W*&)WrapperInterface2, DirectInputDeviceWrapperBackup2W, (LPDIRECTINPUTDEVICE2W)ProxyInterface, this);
return GetInterfaceAddress((m_IDirectInputDevice2W*&)WrapperInterface2, WrapperInterfaceBackup2W, (LPDIRECTINPUTDEVICE2W)ProxyInterface, this);
}
case 7:
if (StringType == ANSI_CHARSET)
{
return GetInterfaceAddress((m_IDirectInputDevice7A*&)WrapperInterface7, DirectInputDeviceWrapperBackup7A, (LPDIRECTINPUTDEVICE7A)ProxyInterface, this);
return GetInterfaceAddress((m_IDirectInputDevice7A*&)WrapperInterface7, WrapperInterfaceBackup7A, (LPDIRECTINPUTDEVICE7A)ProxyInterface, this);
}
else
{
return GetInterfaceAddress((m_IDirectInputDevice7W*&)WrapperInterface7, DirectInputDeviceWrapperBackup7W, (LPDIRECTINPUTDEVICE7W)ProxyInterface, this);
return GetInterfaceAddress((m_IDirectInputDevice7W*&)WrapperInterface7, WrapperInterfaceBackup7W, (LPDIRECTINPUTDEVICE7W)ProxyInterface, this);
}
}
LOG_LIMIT(100, __FUNCTION__ << " Error: wrapper interface version not found: " << DirectXVersion);
Expand Down Expand Up @@ -941,14 +943,14 @@ void m_IDirectInputDeviceX::ReleaseInterface()
// Don't delete wrapper interface
if (StringType == ANSI_CHARSET)
{
SaveInterfaceAddress((m_IDirectInputDeviceA*&)WrapperInterface, DirectInputDeviceWrapperBackupA);
SaveInterfaceAddress((m_IDirectInputDevice2A*&)WrapperInterface2, DirectInputDeviceWrapperBackup2A);
SaveInterfaceAddress((m_IDirectInputDevice7A*&)WrapperInterface7, DirectInputDeviceWrapperBackup7A);
SaveInterfaceAddress((m_IDirectInputDeviceA*&)WrapperInterface, WrapperInterfaceBackupA);
SaveInterfaceAddress((m_IDirectInputDevice2A*&)WrapperInterface2, WrapperInterfaceBackup2A);
SaveInterfaceAddress((m_IDirectInputDevice7A*&)WrapperInterface7, WrapperInterfaceBackup7A);
}
else
{
SaveInterfaceAddress((m_IDirectInputDeviceW*&)WrapperInterface, DirectInputDeviceWrapperBackupW);
SaveInterfaceAddress((m_IDirectInputDevice2W*&)WrapperInterface2, DirectInputDeviceWrapperBackup2W);
SaveInterfaceAddress((m_IDirectInputDevice7W*&)WrapperInterface7, DirectInputDeviceWrapperBackup7W);
SaveInterfaceAddress((m_IDirectInputDeviceW*&)WrapperInterface, WrapperInterfaceBackupW);
SaveInterfaceAddress((m_IDirectInputDevice2W*&)WrapperInterface2, WrapperInterfaceBackup2W);
SaveInterfaceAddress((m_IDirectInputDevice7W*&)WrapperInterface7, WrapperInterfaceBackup7W);
}
}
14 changes: 8 additions & 6 deletions IDirectInputEffect.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -17,18 +17,20 @@
#include "dinputto8.h"

// Cached wrapper interface
m_IDirectInputEffect* DirectInputEffectWrapperBackup = nullptr;
namespace {
m_IDirectInputEffect* WrapperInterfaceBackup = nullptr;
}

m_IDirectInputEffect* CreateEffectWrapper(IDirectInputEffect* aOriginal)
{
SetCriticalSection();
m_IDirectInputEffect* Interface = nullptr;
if (DirectInputEffectWrapperBackup)
if (WrapperInterfaceBackup)
{
Interface = DirectInputEffectWrapperBackup;
Interface = WrapperInterfaceBackup;
if (aOriginal)
{
DirectInputEffectWrapperBackup = nullptr;
WrapperInterfaceBackup = nullptr;
Interface->SetProxy(aOriginal);
}
}
Expand All @@ -38,7 +40,7 @@ m_IDirectInputEffect* CreateEffectWrapper(IDirectInputEffect* aOriginal)
if (!aOriginal)
{
Interface->SetProxy(nullptr);
DirectInputEffectWrapperBackup = Interface;
WrapperInterfaceBackup = Interface;
}
}
ReleaseCriticalSection();
Expand Down Expand Up @@ -87,7 +89,7 @@ ULONG m_IDirectInputEffect::Release()
if (ref == 0)
{
// Don't delete wrapper interface
SaveInterfaceAddress((m_IDirectInputEffect*&)WrapperInterface, DirectInputEffectWrapperBackup);
SaveInterfaceAddress((m_IDirectInputEffect*&)WrapperInterface, WrapperInterfaceBackup);
}

return ref;
Expand Down
38 changes: 20 additions & 18 deletions IDirectInputX.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -17,12 +17,14 @@
#include "dinputto8.h"

// Cached wrapper interface
m_IDirectInputA* DirectInputWrapperBackupA = nullptr;
m_IDirectInputW* DirectInputWrapperBackupW = nullptr;
m_IDirectInput2A* DirectInputWrapperBackup2A = nullptr;
m_IDirectInput2W* DirectInputWrapperBackup2W = nullptr;
m_IDirectInput7A* DirectInputWrapperBackup7A = nullptr;
m_IDirectInput7W* DirectInputWrapperBackup7W = nullptr;
namespace {
m_IDirectInputA* WrapperInterfaceBackupA = nullptr;
m_IDirectInputW* WrapperInterfaceBackupW = nullptr;
m_IDirectInput2A* WrapperInterfaceBackup2A = nullptr;
m_IDirectInput2W* WrapperInterfaceBackup2W = nullptr;
m_IDirectInput7A* WrapperInterfaceBackup7A = nullptr;
m_IDirectInput7W* WrapperInterfaceBackup7W = nullptr;
}

HRESULT m_IDirectInputX::QueryInterface(REFIID riid, LPVOID FAR * ppvObj, DWORD DirectXVersion)
{
Expand All @@ -45,29 +47,29 @@ LPVOID m_IDirectInputX::GetWrapperInterfaceX(DWORD DirectXVersion)
case 1:
if (StringType == ANSI_CHARSET)
{
return GetInterfaceAddress((m_IDirectInputA*&)WrapperInterface, DirectInputWrapperBackupA, (LPDIRECTINPUTA)ProxyInterface, this);
return GetInterfaceAddress((m_IDirectInputA*&)WrapperInterface, WrapperInterfaceBackupA, (LPDIRECTINPUTA)ProxyInterface, this);
}
else
{
return GetInterfaceAddress((m_IDirectInputW*&)WrapperInterface, DirectInputWrapperBackupW, (LPDIRECTINPUTW)ProxyInterface, this);
return GetInterfaceAddress((m_IDirectInputW*&)WrapperInterface, WrapperInterfaceBackupW, (LPDIRECTINPUTW)ProxyInterface, this);
}
case 2:
if (StringType == ANSI_CHARSET)
{
return GetInterfaceAddress((m_IDirectInput2A*&)WrapperInterface2, DirectInputWrapperBackup2A, (LPDIRECTINPUT2A)ProxyInterface, this);
return GetInterfaceAddress((m_IDirectInput2A*&)WrapperInterface2, WrapperInterfaceBackup2A, (LPDIRECTINPUT2A)ProxyInterface, this);
}
else
{
return GetInterfaceAddress((m_IDirectInput2W*&)WrapperInterface2, DirectInputWrapperBackup2W, (LPDIRECTINPUT2W)ProxyInterface, this);
return GetInterfaceAddress((m_IDirectInput2W*&)WrapperInterface2, WrapperInterfaceBackup2W, (LPDIRECTINPUT2W)ProxyInterface, this);
}
case 7:
if (StringType == ANSI_CHARSET)
{
return GetInterfaceAddress((m_IDirectInput7A*&)WrapperInterface7, DirectInputWrapperBackup7A, (LPDIRECTINPUT7A)ProxyInterface, this);
return GetInterfaceAddress((m_IDirectInput7A*&)WrapperInterface7, WrapperInterfaceBackup7A, (LPDIRECTINPUT7A)ProxyInterface, this);
}
else
{
return GetInterfaceAddress((m_IDirectInput7W*&)WrapperInterface7, DirectInputWrapperBackup7W, (LPDIRECTINPUT7W)ProxyInterface, this);
return GetInterfaceAddress((m_IDirectInput7W*&)WrapperInterface7, WrapperInterfaceBackup7W, (LPDIRECTINPUT7W)ProxyInterface, this);
}
}
LOG_LIMIT(100, __FUNCTION__ << " Error: wrapper interface version not found: " << DirectXVersion);
Expand Down Expand Up @@ -306,14 +308,14 @@ void m_IDirectInputX::ReleaseInterface()
// Don't delete wrapper interface
if (StringType == ANSI_CHARSET)
{
SaveInterfaceAddress((m_IDirectInputA*&)WrapperInterface, DirectInputWrapperBackupA);
SaveInterfaceAddress((m_IDirectInput2A*&)WrapperInterface2, DirectInputWrapperBackup2A);
SaveInterfaceAddress((m_IDirectInput7A*&)WrapperInterface7, DirectInputWrapperBackup7A);
SaveInterfaceAddress((m_IDirectInputA*&)WrapperInterface, WrapperInterfaceBackupA);
SaveInterfaceAddress((m_IDirectInput2A*&)WrapperInterface2, WrapperInterfaceBackup2A);
SaveInterfaceAddress((m_IDirectInput7A*&)WrapperInterface7, WrapperInterfaceBackup7A);
}
else
{
SaveInterfaceAddress((m_IDirectInputW*&)WrapperInterface, DirectInputWrapperBackupW);
SaveInterfaceAddress((m_IDirectInput2W*&)WrapperInterface2, DirectInputWrapperBackup2W);
SaveInterfaceAddress((m_IDirectInput7W*&)WrapperInterface7, DirectInputWrapperBackup7W);
SaveInterfaceAddress((m_IDirectInputW*&)WrapperInterface, WrapperInterfaceBackupW);
SaveInterfaceAddress((m_IDirectInput2W*&)WrapperInterface2, WrapperInterfaceBackup2W);
SaveInterfaceAddress((m_IDirectInput7W*&)WrapperInterface7, WrapperInterfaceBackup7W);
}
}

0 comments on commit 65d1a0d

Please sign in to comment.