1
0
mirror of https://github.com/alliedmodders/metamod-source.git synced 2025-02-26 19:54:14 +01:00

narrowed down valgrind complaints by adding SH_REMOVE to all the test cases

--HG--
branch : sourcemm-1.4.3
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/branches/sourcemm-1.4.3%40609
This commit is contained in:
David Anderson 2008-01-07 07:30:48 +00:00
parent 0918d18d09
commit 4941565f18
7 changed files with 37 additions and 2 deletions

View File

@ -109,6 +109,10 @@ bool TestBail(std::string &error)
new State_EatYams_Return(6),
NULL), "Part 6");
SH_REMOVE_HOOK_STATICFUNC(IGaben, EatYams, g_Gabgab, EatYams_Handler1, false);
UntestBail2();
delete g_Gabgab;
return true;

View File

@ -28,6 +28,7 @@ namespace N_TestBail
extern IGaben *g_Gabgab;
bool TestBail2(std::string &error);
void UntestBail2();
}
using namespace N_TestBail;

View File

@ -5,6 +5,7 @@
#include "sourcehook_test.h"
#include "testbail.h"
static unsigned int n_calls = 0;
int EatYams_Handler2(int a)
{
@ -31,6 +32,18 @@ namespace N_TestBail
CHECK_COND(ret == 6, "Part 2.1");
n_calls++;
return true;
}
void UntestBail2()
{
while (n_calls)
{
SH_REMOVE_HOOK_STATICFUNC(IGaben, EatYams, g_Gabgab, EatYams_Handler3, false);
SH_REMOVE_HOOK_STATICFUNC(IGaben, EatYams, g_Gabgab, EatYams_Handler2, false);
n_calls--;
}
}
}

View File

@ -94,9 +94,9 @@ bool TestMulti(std::string &error)
}
}
for (unsigned int i=1; i<10; i++)
for (unsigned int i=0; i<10; i++)
{
SH_REMOVE_HOOK_STATICFUNC(VMultiTest, HookTarget, pv[1], HookFunction, false);
SH_REMOVE_HOOK_STATICFUNC(VMultiTest, HookTarget, pv[i], HookFunction, false);
delete pv[i];
}
@ -104,3 +104,4 @@ bool TestMulti(std::string &error)
return true;
}

View File

@ -222,5 +222,11 @@ bool TestRecall(std::string &error)
CHECK_COND(a == 0xDEADFC, "Part 5.1");
SH_REMOVE_HOOK_STATICFUNC(Test, Func2, ptr, HandlerPost_Func2, true);
SH_REMOVE_HOOK_STATICFUNC(Test, Func2, ptr, Handler2_Func2, false);
SH_REMOVE_HOOK_STATICFUNC(Test, Func2, ptr, Handler1_Func22, false);
SH_REMOVE_HOOK_STATICFUNC(Test, Func2, ptr, HandlerPost1_Func22, true);
SH_REMOVE_HOOK_STATICFUNC(Test, Func2, ptr, HandlerPost2_Func22, true);
return true;
}

View File

@ -159,5 +159,7 @@ bool TestRef(std::string &error)
new State_Result(12),
NULL), "Part 4");
SH_REMOVE_HOOK_MEMFUNC(CHello, Func, &hello, &hook, &CHook::Func, false);
return true;
}

View File

@ -196,5 +196,13 @@ bool TestRefRet(std::string &error)
new State_Func2_Ret(&hook.m_Var), // really returned hook.m_Var
NULL), "Part 7");
SH_REMOVE_HOOK_MEMFUNC(Test, Func2, &test, &hook, &CHook::Func2_Post1, true);
SH_REMOVE_HOOK_MEMFUNC(Test, Func2, &test, &hook, &CHook::Func2_Pre1, false);
SH_REMOVE_HOOK_MEMFUNC(Test, Func1, &test, &hook, &CHook::Func1_Pre1, false);
SH_REMOVE_HOOK_MEMFUNC(Test, Func1, &test, &hook, &CHook::Func1_Post1, true);
SH_REMOVE_HOOK_MEMFUNC(Test, Func1, &test, &hook, &CHook::Func1_Pre2, false);
SH_REMOVE_HOOK_MEMFUNC(Test, Func1, &test, &hook, &CHook::Func1_Post2, true);
return true;
}