From cd3125ced0f6a8fee8e6c430973dce17409de67a Mon Sep 17 00:00:00 2001 From: Uleat Date: Sun, 28 Apr 2019 21:20:52 -0400 Subject: [PATCH] Added safety to SuspendMinion spell index dereference --- zone/client.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/zone/client.cpp b/zone/client.cpp index 86b402f44..2d126598f 100644 --- a/zone/client.cpp +++ b/zone/client.cpp @@ -5612,6 +5612,12 @@ void Client::SuspendMinion() { if(m_suspendedminion.SpellID > 0) { + if (m_suspendedminion.SpellID >= SPDAT_RECORDS) { + Message(13, "Invalid suspended minion spell id (%u).", m_suspendedminion.SpellID); + memset(&m_suspendedminion, 0, sizeof(PetInfo)); + return; + } + MakePoweredPet(m_suspendedminion.SpellID, spells[m_suspendedminion.SpellID].teleport_zone, m_suspendedminion.petpower, m_suspendedminion.Name, m_suspendedminion.size);