From c1d75857f3ee4242f6106e4ec59d82f408e60061 Mon Sep 17 00:00:00 2001 From: Pavol Marko Date: Sun, 29 Aug 2004 18:51:25 +0000 Subject: [PATCH] fixed crash bug --- amxmodx/CForward.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/amxmodx/CForward.cpp b/amxmodx/CForward.cpp index 9420bb6e..7247b978 100755 --- a/amxmodx/CForward.cpp +++ b/amxmodx/CForward.cpp @@ -314,9 +314,10 @@ int CForwardMngr::registerSPForward(const char *funcName, AMX *amx, int numParam CSPForward *pForward; if (m_FreeSPForwards.size()) { - pForward = m_SPForwards[m_FreeSPForwards.back()]; - m_FreeSPForwards.pop_back(); - pForward->Set(funcName, amx, numParams, paramTypes); + retVal = m_FreeSPForwards.back(); + m_FreeSPForwards.pop_back(); + pForward = m_SPForwards[retVal>>1]; // >>1 because unregisterSPForward pushes the id which contains the sp flag + pForward->Set(funcName, amx, numParams, paramTypes); } else {