Clarify detour creation errors (#1191)
A logic error here meant that it wasn't printing the failing sig name in the common case
This commit is contained in:
parent
a3dd25f354
commit
4d38f11367
@ -8,7 +8,7 @@
|
|||||||
* This program is free software; you can redistribute it and/or modify it under
|
* This program is free software; you can redistribute it and/or modify it under
|
||||||
* the terms of the GNU General Public License, version 3.0, as published by the
|
* the terms of the GNU General Public License, version 3.0, as published by the
|
||||||
* Free Software Foundation.
|
* Free Software Foundation.
|
||||||
*
|
*
|
||||||
* This program is distributed in the hope that it will be useful, but WITHOUT
|
* This program is distributed in the hope that it will be useful, but WITHOUT
|
||||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
||||||
* FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
|
* FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
|
||||||
@ -182,20 +182,23 @@ bool CDetour::IsEnabled()
|
|||||||
|
|
||||||
bool CDetour::CreateDetour()
|
bool CDetour::CreateDetour()
|
||||||
{
|
{
|
||||||
if (signame && !gameconf->GetMemSig(signame, &detour_address))
|
if (signame)
|
||||||
{
|
{
|
||||||
g_pSM->LogError(myself, "Could not locate %s - Disabling detour", signame);
|
if (!gameconf->GetMemSig(signame, &detour_address))
|
||||||
return false;
|
{
|
||||||
}
|
g_pSM->LogError(myself, "Signature for %s not found in gamedata", signame);
|
||||||
else if(!detour_address)
|
return false;
|
||||||
{
|
}
|
||||||
g_pSM->LogError(myself, "Invalid detour address passed - Disabling detour to prevent crashes");
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!detour_address)
|
if (!detour_address)
|
||||||
|
{
|
||||||
|
g_pSM->LogError(myself, "Sigscan for %s failed", signame);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if (!detour_address)
|
||||||
{
|
{
|
||||||
g_pSM->LogError(myself, "Sigscan for %s failed - Disabling detour to prevent crashes", signame);
|
g_pSM->LogError(myself, "Invalid function address passed for detour");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -209,7 +212,7 @@ bool CDetour::CreateDetour()
|
|||||||
JitWriter wr;
|
JitWriter wr;
|
||||||
JitWriter *jit = ≀
|
JitWriter *jit = ≀
|
||||||
jit_uint32_t CodeSize = 0;
|
jit_uint32_t CodeSize = 0;
|
||||||
|
|
||||||
wr.outbase = NULL;
|
wr.outbase = NULL;
|
||||||
wr.outptr = NULL;
|
wr.outptr = NULL;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user