Skip to content

Commit 7b89db2

Browse files
committed
Fix erroneous __Virtual_Address__ checks
1 parent acd162e commit 7b89db2

File tree

5 files changed

+12
-12
lines changed

5 files changed

+12
-12
lines changed

core/logic/smn_core.cpp

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -865,7 +865,7 @@ enum NumberType
865865
static cell_t LoadFromAddress(IPluginContext *pContext, const cell_t *params)
866866
{
867867
void *addr = reinterpret_cast<void*>(params[1]);
868-
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) != SP_ERROR_NONE) {
868+
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) == SP_ERROR_NONE) {
869869
addr = pseudoAddr.FromPseudoAddress(params[1]);
870870
}
871871

@@ -895,7 +895,7 @@ static cell_t LoadFromAddress(IPluginContext *pContext, const cell_t *params)
895895
static cell_t StoreToAddress(IPluginContext *pContext, const cell_t *params)
896896
{
897897
void *addr = reinterpret_cast<void*>(params[1]);
898-
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) != SP_ERROR_NONE) {
898+
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) == SP_ERROR_NONE) {
899899
addr = pseudoAddr.FromPseudoAddress(params[1]);
900900
}
901901

@@ -951,7 +951,7 @@ static cell_t StoreToAddress(IPluginContext *pContext, const cell_t *params)
951951
static cell_t LoadAddressFromAddress(IPluginContext *pContext, const cell_t *params)
952952
{
953953
void *addr = reinterpret_cast<void*>(params[1]);
954-
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) != SP_ERROR_NONE) {
954+
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) == SP_ERROR_NONE) {
955955
addr = pseudoAddr.FromPseudoAddress(params[1]);
956956
}
957957

@@ -965,7 +965,7 @@ static cell_t LoadAddressFromAddress(IPluginContext *pContext, const cell_t *par
965965
}
966966

967967
void* data = *reinterpret_cast<void**>(addr);
968-
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) != SP_ERROR_NONE) {
968+
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) == SP_ERROR_NONE) {
969969
return pseudoAddr.ToPseudoAddress(data);
970970
}
971971
return reinterpret_cast<uintptr_t>(data);
@@ -974,7 +974,7 @@ static cell_t LoadAddressFromAddress(IPluginContext *pContext, const cell_t *par
974974
static cell_t StoreAddressToAddress(IPluginContext *pContext, const cell_t *params)
975975
{
976976
void *addr = reinterpret_cast<void*>(params[1]);
977-
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) != SP_ERROR_NONE) {
977+
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) == SP_ERROR_NONE) {
978978
addr = pseudoAddr.FromPseudoAddress(params[1]);
979979
}
980980

@@ -988,7 +988,7 @@ static cell_t StoreAddressToAddress(IPluginContext *pContext, const cell_t *para
988988
}
989989

990990
void *data = reinterpret_cast<void*>(params[2]);
991-
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) != SP_ERROR_NONE) {
991+
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) == SP_ERROR_NONE) {
992992
data = pseudoAddr.FromPseudoAddress(params[2]);
993993
}
994994

core/smn_entities.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -725,7 +725,7 @@ static cell_t GetEntDataEnt2(IPluginContext *pContext, const cell_t *params)
725725
static cell_t LoadEntityFromHandleAddress(IPluginContext *pContext, const cell_t *params)
726726
{
727727
void *addr = reinterpret_cast<void*>(params[1]);
728-
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) != SP_ERROR_NONE) {
728+
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) == SP_ERROR_NONE) {
729729
addr = g_SourceMod.FromPseudoAddress(params[1]);
730730
}
731731

extensions/dhooks/natives.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -123,7 +123,7 @@ cell_t Native_CreateHook(IPluginContext *pContext, const cell_t *params)
123123
cell_t Native_CreateDetour(IPluginContext *pContext, const cell_t *params)
124124
{
125125
void* addr = reinterpret_cast<void*>(params[1]);
126-
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) != SP_ERROR_NONE) {
126+
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) == SP_ERROR_NONE) {
127127
addr = g_pSM->FromPseudoAddress(params[1]);
128128
}
129129

@@ -595,7 +595,7 @@ cell_t HookRawImpl(IPluginContext *pContext, const cell_t *params, int callbackI
595595
removalcb = pContext->GetFunctionById(params[removalcbIndex]);
596596

597597
void* iface = reinterpret_cast<void*>(params[3]);
598-
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) != SP_ERROR_NONE) {
598+
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) == SP_ERROR_NONE) {
599599
iface = g_pSM->FromPseudoAddress(params[3]);
600600
}
601601

@@ -1519,7 +1519,7 @@ cell_t Native_GetParamAddress(IPluginContext *pContext, const cell_t *params)
15191519

15201520
size_t offset = GetParamOffset(paramStruct, index);
15211521

1522-
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) != SP_ERROR_NONE) {
1522+
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) == SP_ERROR_NONE) {
15231523
return g_pSM->ToPseudoAddress(*(void**)((intptr_t)paramStruct->orgParams + offset));
15241524
}
15251525
return *(cell_t *)((intptr_t)paramStruct->orgParams + offset);

extensions/dhooks/vhook.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -473,7 +473,7 @@ cell_t GetThisPtr(IPluginContext* pContext, void *iface, ThisPointerType type)
473473
return -1;
474474
return gamehelpers->EntityToBCompatRef((CBaseEntity *)iface);
475475
}
476-
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) != SP_ERROR_NONE) {
476+
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) == SP_ERROR_NONE) {
477477
return g_pSM->ToPseudoAddress(iface);
478478
}
479479
return (cell_t)iface;

extensions/sdktools/vcaller.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -173,7 +173,7 @@ static cell_t PrepSDKCall_SetSignature(IPluginContext *pContext, const cell_t *p
173173
static cell_t PrepSDKCall_SetAddress(IPluginContext *pContext, const cell_t *params)
174174
{
175175
s_call_addr = reinterpret_cast<void*>(params[1]);
176-
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) != SP_ERROR_NONE) {
176+
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) == SP_ERROR_NONE) {
177177
s_call_addr = g_pSM->FromPseudoAddress(params[1]);
178178
}
179179

0 commit comments

Comments
 (0)