diff --git a/core/EventManager.cpp b/core/EventManager.cpp
index 80e20a5d..d6d4eec6 100644
--- a/core/EventManager.cpp
+++ b/core/EventManager.cpp
@@ -424,7 +424,7 @@ bool EventManager::OnFireEvent(IGameEvent *pEvent, bool bDontBroadcast)
 			m_EventCopies.push(gameevents->DuplicateEvent(pEvent));
 		}
 
-		if (res)
+		if (res >= Pl_Handled)
 		{
 			gameevents->FreeEvent(pEvent);
 			RETURN_META_VALUE(MRES_SUPERCEDE, false);