mirror of
https://github.com/alliedmodders/sourcemod.git
synced 2025-12-06 18:08:36 +00:00
Fix erroneous __Virtual_Address__ checks
This commit is contained in:
parent
acd162ef91
commit
7b89db285b
@ -865,7 +865,7 @@ enum NumberType
|
||||
static cell_t LoadFromAddress(IPluginContext *pContext, const cell_t *params)
|
||||
{
|
||||
void *addr = reinterpret_cast<void*>(params[1]);
|
||||
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) != SP_ERROR_NONE) {
|
||||
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) == SP_ERROR_NONE) {
|
||||
addr = pseudoAddr.FromPseudoAddress(params[1]);
|
||||
}
|
||||
|
||||
@ -895,7 +895,7 @@ static cell_t LoadFromAddress(IPluginContext *pContext, const cell_t *params)
|
||||
static cell_t StoreToAddress(IPluginContext *pContext, const cell_t *params)
|
||||
{
|
||||
void *addr = reinterpret_cast<void*>(params[1]);
|
||||
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) != SP_ERROR_NONE) {
|
||||
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) == SP_ERROR_NONE) {
|
||||
addr = pseudoAddr.FromPseudoAddress(params[1]);
|
||||
}
|
||||
|
||||
@ -951,7 +951,7 @@ static cell_t StoreToAddress(IPluginContext *pContext, const cell_t *params)
|
||||
static cell_t LoadAddressFromAddress(IPluginContext *pContext, const cell_t *params)
|
||||
{
|
||||
void *addr = reinterpret_cast<void*>(params[1]);
|
||||
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) != SP_ERROR_NONE) {
|
||||
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) == SP_ERROR_NONE) {
|
||||
addr = pseudoAddr.FromPseudoAddress(params[1]);
|
||||
}
|
||||
|
||||
@ -965,7 +965,7 @@ static cell_t LoadAddressFromAddress(IPluginContext *pContext, const cell_t *par
|
||||
}
|
||||
|
||||
void* data = *reinterpret_cast<void**>(addr);
|
||||
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) != SP_ERROR_NONE) {
|
||||
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) == SP_ERROR_NONE) {
|
||||
return pseudoAddr.ToPseudoAddress(data);
|
||||
}
|
||||
return reinterpret_cast<uintptr_t>(data);
|
||||
@ -974,7 +974,7 @@ static cell_t LoadAddressFromAddress(IPluginContext *pContext, const cell_t *par
|
||||
static cell_t StoreAddressToAddress(IPluginContext *pContext, const cell_t *params)
|
||||
{
|
||||
void *addr = reinterpret_cast<void*>(params[1]);
|
||||
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) != SP_ERROR_NONE) {
|
||||
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) == SP_ERROR_NONE) {
|
||||
addr = pseudoAddr.FromPseudoAddress(params[1]);
|
||||
}
|
||||
|
||||
@ -988,7 +988,7 @@ static cell_t StoreAddressToAddress(IPluginContext *pContext, const cell_t *para
|
||||
}
|
||||
|
||||
void *data = reinterpret_cast<void*>(params[2]);
|
||||
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) != SP_ERROR_NONE) {
|
||||
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) == SP_ERROR_NONE) {
|
||||
data = pseudoAddr.FromPseudoAddress(params[2]);
|
||||
}
|
||||
|
||||
|
||||
@ -725,7 +725,7 @@ static cell_t GetEntDataEnt2(IPluginContext *pContext, const cell_t *params)
|
||||
static cell_t LoadEntityFromHandleAddress(IPluginContext *pContext, const cell_t *params)
|
||||
{
|
||||
void *addr = reinterpret_cast<void*>(params[1]);
|
||||
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) != SP_ERROR_NONE) {
|
||||
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) == SP_ERROR_NONE) {
|
||||
addr = g_SourceMod.FromPseudoAddress(params[1]);
|
||||
}
|
||||
|
||||
|
||||
@ -123,7 +123,7 @@ cell_t Native_CreateHook(IPluginContext *pContext, const cell_t *params)
|
||||
cell_t Native_CreateDetour(IPluginContext *pContext, const cell_t *params)
|
||||
{
|
||||
void* addr = reinterpret_cast<void*>(params[1]);
|
||||
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) != SP_ERROR_NONE) {
|
||||
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) == SP_ERROR_NONE) {
|
||||
addr = g_pSM->FromPseudoAddress(params[1]);
|
||||
}
|
||||
|
||||
@ -595,7 +595,7 @@ cell_t HookRawImpl(IPluginContext *pContext, const cell_t *params, int callbackI
|
||||
removalcb = pContext->GetFunctionById(params[removalcbIndex]);
|
||||
|
||||
void* iface = reinterpret_cast<void*>(params[3]);
|
||||
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) != SP_ERROR_NONE) {
|
||||
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) == SP_ERROR_NONE) {
|
||||
iface = g_pSM->FromPseudoAddress(params[3]);
|
||||
}
|
||||
|
||||
@ -1519,7 +1519,7 @@ cell_t Native_GetParamAddress(IPluginContext *pContext, const cell_t *params)
|
||||
|
||||
size_t offset = GetParamOffset(paramStruct, index);
|
||||
|
||||
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) != SP_ERROR_NONE) {
|
||||
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) == SP_ERROR_NONE) {
|
||||
return g_pSM->ToPseudoAddress(*(void**)((intptr_t)paramStruct->orgParams + offset));
|
||||
}
|
||||
return *(cell_t *)((intptr_t)paramStruct->orgParams + offset);
|
||||
|
||||
@ -473,7 +473,7 @@ cell_t GetThisPtr(IPluginContext* pContext, void *iface, ThisPointerType type)
|
||||
return -1;
|
||||
return gamehelpers->EntityToBCompatRef((CBaseEntity *)iface);
|
||||
}
|
||||
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) != SP_ERROR_NONE) {
|
||||
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) == SP_ERROR_NONE) {
|
||||
return g_pSM->ToPseudoAddress(iface);
|
||||
}
|
||||
return (cell_t)iface;
|
||||
|
||||
@ -173,7 +173,7 @@ static cell_t PrepSDKCall_SetSignature(IPluginContext *pContext, const cell_t *p
|
||||
static cell_t PrepSDKCall_SetAddress(IPluginContext *pContext, const cell_t *params)
|
||||
{
|
||||
s_call_addr = reinterpret_cast<void*>(params[1]);
|
||||
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) != SP_ERROR_NONE) {
|
||||
if (pContext->GetRuntime()->FindPubvarByName("__Virtual_Address__", nullptr) == SP_ERROR_NONE) {
|
||||
s_call_addr = g_pSM->FromPseudoAddress(params[1]);
|
||||
}
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user