diff --git a/src/p_inter.c b/src/p_inter.c index 5dae5dc82..decd5cc56 100644 --- a/src/p_inter.c +++ b/src/p_inter.c @@ -1505,7 +1505,7 @@ boolean P_CheckRacers(void) } else { - if (griefed == true) + if (griefed == true && numHumans > 0) { // Don't do this if someone spectated eliminateLast = false; @@ -2503,7 +2503,7 @@ static boolean P_KillPlayer(player_t *player, mobj_t *inflictor, mobj_t *source, if (gametyperules & (GTR_BUMPERS|GTR_CHECKPOINTS)) { if ((player->pitblame > -1) && (player->pitblame < MAXPLAYERS) - && (playeringame[player->pitblame]) && (!players[player->pitblame].spectator) + && (playeringame[player->pitblame]) && (!players[player->pitblame].spectator) && (players[player->pitblame].mo) && (!P_MobjWasRemoved(players[player->pitblame].mo))) { P_DamageMobj(player->mo, players[player->pitblame].mo, players[player->pitblame].mo, 1, DMG_KARMA);