diff --git a/src/p_enemy.c b/src/p_enemy.c
index 63d430eb68f9dccc291beb02c899e78e8cdb2359..ca947fc20625aabf3179dae75685bd7779f8daa0 100644
--- a/src/p_enemy.c
+++ b/src/p_enemy.c
@@ -1589,6 +1589,10 @@ void A_PointyThink(mobj_t *actor)
 	if (!actor->tracer) // For some reason we do not have spike balls...
 		return;
 
+	// Catch case where actor lastlook is -1 (which segfaults the following blocks)
+	if (actor->lastlook < 0)
+		return;
+
 	// Position spike balls relative to the value of 'lastlook'.
 	ball = actor->tracer;