diff --git a/amxmodx/CFrameAction.h b/amxmodx/CFrameAction.h index ee368b6a8..1201a928a 100644 --- a/amxmodx/CFrameAction.h +++ b/amxmodx/CFrameAction.h @@ -53,6 +53,15 @@ class CFrameActionMngr } } + void clear() + { + int count = m_requestedFrames.length(); + while (count--) + { + m_requestedFrames.popFront(); + } + } + private: ke::Deque> m_requestedFrames; diff --git a/amxmodx/meta_api.cpp b/amxmodx/meta_api.cpp index 81560a91c..cd31a1ee1 100755 --- a/amxmodx/meta_api.cpp +++ b/amxmodx/meta_api.cpp @@ -393,6 +393,7 @@ int C_Spawn(edict_t *pent) } + g_frameActionMngr.clear(); g_forwards.clear(); g_log.MapChange(); @@ -771,6 +772,7 @@ void C_ServerDeactivate_Post() g_forcegeneric.clear(); g_grenades.clear(); g_tasksMngr.clear(); + g_frameActionMngr.clear(); g_forwards.clear(); g_logevents.clearLogEvents(); g_events.clearEvents(); @@ -1731,6 +1733,7 @@ C_DLLEXPORT int Meta_Detach(PLUG_LOADTIME now, PL_UNLOAD_REASON reason) modules_callPluginsUnloading(); g_auth.clear(); + g_frameActionMngr.clear(); g_forwards.clear(); g_commands.clear(); g_forcemodels.clear();