Added checks to avoid crashing in some natives before map start (bug 5119, r=fyren).

This commit is contained in:
Nicholas Hastings
2011-10-11 22:50:21 -04:00
parent 45f68840ed
commit 67163e14e6
6 changed files with 30 additions and 2 deletions
+10
View File
@@ -760,6 +760,11 @@ static cell_t FindEntityByClassname(IPluginContext *pContext, const cell_t *para
#if SOURCE_ENGINE >= SE_ORANGEBOX
static cell_t CreateEntityByName(IPluginContext *pContext, const cell_t *params)
{
if (!g_pSM->IsMapRunning())
{
return pContext->ThrowNativeError("Cannot create new entity when no map is running");
}
char *classname;
pContext->LocalToString(params[1], &classname);
CBaseEntity *pEntity = (CBaseEntity *)servertools->CreateEntityByName(classname);
@@ -768,6 +773,11 @@ static cell_t CreateEntityByName(IPluginContext *pContext, const cell_t *params)
#else
static cell_t CreateEntityByName(IPluginContext *pContext, const cell_t *params)
{
if (!g_pSM->IsMapRunning())
{
return pContext->ThrowNativeError("Cannot create new entity when no map is running");
}
static ValveCall *pCall = NULL;
if (!pCall)
{