diff --git a/src/p_enemy.c b/src/p_enemy.c
index 3305709fc14df8e8aed71b04cc1cfa4a6d15b73d..c376c2db45d8fe288718a0ff4ca6565a82bd7941 100644
--- a/src/p_enemy.c
+++ b/src/p_enemy.c
@@ -13460,6 +13460,9 @@ static boolean PIT_DustDevilLaunch(mobj_t *thing)
 	if (!player)
 		return true;
 
+	if (player->spectator)
+		return true;
+
 	if (player->powers[pw_carry] != CR_DUSTDEVIL && (player->powers[pw_ignorelatch] & (1<<15)))
 		return true;