From a26316ba68289e22d904e661baf72bfd0a1b69b1 Mon Sep 17 00:00:00 2001 From: Drifter Date: Tue, 20 Dec 2016 09:48:26 -0500 Subject: [PATCH] Fix not ending context. --- vhook.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/vhook.cpp b/vhook.cpp index fca8525..fdcdaf0 100644 --- a/vhook.cpp +++ b/vhook.cpp @@ -354,6 +354,7 @@ void *Callback(DHooksCallback *dg, void **argStack) g_SHPtr->SetRes(MRES_SUPERCEDE); mres = MRES_SUPERCEDE; ret = CallVFunction(dg, paramStruct, g_SHPtr->GetIfacePtr()); + g_SHPtr->EndContext(NULL); break; case MRES_ChangedOverride: if(dg->returnType != ReturnType_Void) @@ -381,6 +382,7 @@ void *Callback(DHooksCallback *dg, void **argStack) g_SHPtr->SetRes(MRES_SUPERCEDE); mres = MRES_SUPERCEDE; CallVFunction(dg, paramStruct, g_SHPtr->GetIfacePtr()); + g_SHPtr->EndContext(NULL); break; case MRES_Override: if(dg->returnType != ReturnType_Void) @@ -434,6 +436,7 @@ void *Callback(DHooksCallback *dg, void **argStack) g_SHPtr->DoRecall(); g_SHPtr->SetRes(MRES_SUPERCEDE); mres = MRES_SUPERCEDE; + g_SHPtr->EndContext(NULL); } break; default: @@ -535,6 +538,7 @@ float Callback_float(DHooksCallback *dg, void **argStack) g_SHPtr->SetRes(MRES_SUPERCEDE); mres = MRES_SUPERCEDE; *(float *)ret = CallVFunction(dg, paramStruct, g_SHPtr->GetIfacePtr()); + g_SHPtr->EndContext(NULL); break; case MRES_ChangedOverride: if(dg->returnType != ReturnType_Void) @@ -555,6 +559,7 @@ float Callback_float(DHooksCallback *dg, void **argStack) g_SHPtr->SetRes(MRES_SUPERCEDE); mres = MRES_SUPERCEDE; CallVFunction(dg, paramStruct, g_SHPtr->GetIfacePtr()); + g_SHPtr->EndContext(NULL); break; case MRES_Override: if(dg->returnType != ReturnType_Void) @@ -692,6 +697,7 @@ SDKVector *Callback_vector(DHooksCallback *dg, void **argStack) g_SHPtr->SetRes(MRES_SUPERCEDE); mres = MRES_SUPERCEDE; *vec_result = CallVFunction(dg, paramStruct, g_SHPtr->GetIfacePtr()); + g_SHPtr->EndContext(NULL); break; case MRES_ChangedOverride: if(dg->returnType != ReturnType_Void) @@ -712,6 +718,7 @@ SDKVector *Callback_vector(DHooksCallback *dg, void **argStack) g_SHPtr->SetRes(MRES_SUPERCEDE); mres = MRES_SUPERCEDE; CallVFunction(dg, paramStruct, g_SHPtr->GetIfacePtr()); + g_SHPtr->EndContext(NULL); break; case MRES_Override: if(dg->returnType != ReturnType_Void) @@ -840,6 +847,7 @@ string_t *Callback_stringt(DHooksCallback *dg, void **argStack) g_SHPtr->SetRes(MRES_SUPERCEDE); mres = MRES_SUPERCEDE; *string_result = CallVFunction(dg, paramStruct, g_SHPtr->GetIfacePtr()); + g_SHPtr->EndContext(NULL); break; case MRES_ChangedOverride: if(dg->returnType != ReturnType_Void) @@ -860,6 +868,7 @@ string_t *Callback_stringt(DHooksCallback *dg, void **argStack) g_SHPtr->SetRes(MRES_SUPERCEDE); mres = MRES_SUPERCEDE; CallVFunction(dg, paramStruct, g_SHPtr->GetIfacePtr()); + g_SHPtr->EndContext(NULL); break; case MRES_Override: if(dg->returnType != ReturnType_Void)