From ae14993ba44dff703a190782bcf03594fb74d901 Mon Sep 17 00:00:00 2001 From: Marisa Heit Date: Sat, 15 Oct 2016 21:14:34 -0500 Subject: [PATCH] Fixed: Possible invalid processing for Crash states that immediately destroy the actor - Setting an actor's Crash state has the potential to destroy the actor if the Crash state has one or more 0-tic states that end with Stop. This was not taken into account when the object's Z velocity was 0, but it was under the floor anyway. --- src/p_mobj.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/p_mobj.cpp b/src/p_mobj.cpp index 1ebec242e..8f926ea77 100644 --- a/src/p_mobj.cpp +++ b/src/p_mobj.cpp @@ -3799,6 +3799,8 @@ void AActor::Tick () else if (Z() <= floorz) { Crash(); + if (ObjectFlags & OF_EuthanizeMe) + return; // actor was destroyed } CheckPortalTransition(true);