From d0b6998637e28b23fc9bb30b3e8093b06340c3e8 Mon Sep 17 00:00:00 2001 From: Alexander 'z33ky' Hirsch <1zeeky@gmail.com> Date: Mon, 26 Apr 2021 09:44:12 +0200 Subject: [PATCH] Simplify CBreakableGibShooter::GetRandomTemplateModelIndex MapEntity_ExtractValue(), as opposed to CEntityMapData, does not require a mutable string. --- sp/src/game/server/effects.cpp | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/sp/src/game/server/effects.cpp b/sp/src/game/server/effects.cpp index a07ae1bd..cbe05190 100644 --- a/sp/src/game/server/effects.cpp +++ b/sp/src/game/server/effects.cpp @@ -2563,15 +2563,11 @@ LINK_ENTITY_TO_CLASS( env_break_shooter, CBreakableGibShooter ); int CBreakableGibShooter::GetRandomTemplateModelIndex( CPointTemplate *pTemplate ) { int iIndex = RandomInt( 0, pTemplate->GetNumTemplates() ); - char *iszTemplate = strdup(STRING(Templates_FindByIndex(pTemplate->GetTemplateIndexForTemplate(iIndex)))); - - CEntityMapData entData( iszTemplate ); + const char *szTemplate = STRING(Templates_FindByIndex(pTemplate->GetTemplateIndexForTemplate(iIndex))); // This might seem a little messy, but I think it's cheaper than creating the entity. char szModel[MAPKEY_MAXLENGTH]; - bool modelExtracted = entData.ExtractValue("model", szModel); - - free(iszTemplate); + bool modelExtracted = MapEntity_ExtractValue(szTemplate, "model", szModel); return modelinfo->GetModelIndex( modelExtracted ? szModel : NULL ); }