diff --git a/src/p_polyobj.c b/src/p_polyobj.c
index 5bd963940767010c9f3739fa02395315e0b61804..ccf8519f6c021f3bfaeea7420debf50d2a7cf11c 100644
--- a/src/p_polyobj.c
+++ b/src/p_polyobj.c
@@ -1159,7 +1159,8 @@ static void Polyobj_rotateThings(polyobj_t *po, vector2_t origin, angle_t delta,
 
 					if (turnthings == 2 || (turnthings == 1 && !mo->player)) {
 						mo->angle += delta;
-						P_SetPlayerAngle(mo->player, (angle_t)(mo->player->angleturn << 16) + delta);
+						if (mo->player)
+							P_SetPlayerAngle(mo->player, (angle_t)(mo->player->angleturn << 16) + delta);
 					}
 				}
 			}