fix sigsegv in A_Custom3DRotate

This commit is contained in:
katsy 2021-03-21 16:09:11 -05:00
parent 760e083c30
commit 42cfcbf7be
1 changed files with 9 additions and 8 deletions

View File

@ -9868,22 +9868,23 @@ void A_Custom3DRotate(mobj_t *actor)
if (LUA_CallAction(A_CUSTOM3DROTATE, actor))
return;
if (!actor->target) // Ensure we actually have a target first.
{
CONS_Printf("Error: A_Custom3DRotate: Object has no target.\n");
P_RemoveMobj(actor);
return;
}
if (actor->target->health == 0)
{
P_RemoveMobj(actor);
return;
}
if (!actor->target) // This should NEVER happen.
{
if (cv_debug)
CONS_Printf("Error: Object has no target\n");
P_RemoveMobj(actor);
return;
}
if (hspeed==0 && vspeed==0)
{
CONS_Printf("Error: A_Custom3DRotate: Object has no speed.\n");
if (cv_debug)
CONS_Printf("Error: A_Custom3DRotate: Object has no speed.\n");
return;
}