diff --git a/src/p_spec.c b/src/p_spec.c
index b04c558816596e528d0f2b4497cc86f42522810d..6fcef330cf9e8adfbad25626ee77657bc51cd61d 100644
--- a/src/p_spec.c
+++ b/src/p_spec.c
@@ -5342,6 +5342,10 @@ void T_LaserFlash(laserthink_t *flash)
 			&& thing->flags & MF_BOSS)
 			continue; // Don't hurt bosses
 
+		// Don't endlessly kill egg guard shields (or anything else for that matter)
+		if (thing->health <= 0)
+			continue;
+
 		top = P_GetSpecialTopZ(thing, sourcesec, sector);
 		bottom = P_GetSpecialBottomZ(thing, sourcesec, sector);