From 783dd986410869be3129ef70c47a8a8d58f2e93b Mon Sep 17 00:00:00 2001 From: Mitchell Richters Date: Tue, 4 Jan 2022 14:00:18 +1100 Subject: [PATCH] - Duke: Fix nullptr check for Duke and RR that was causing a crash in a glitched spot in RR's E1L1. --- source/games/duke/src/player_d.cpp | 2 +- source/games/duke/src/player_r.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/source/games/duke/src/player_d.cpp b/source/games/duke/src/player_d.cpp index d565ef322..73c0b7a63 100644 --- a/source/games/duke/src/player_d.cpp +++ b/source/games/duke/src/player_d.cpp @@ -2851,7 +2851,7 @@ void processinput_d(int snum) pact->spr.xvel = clamp(ksqrt((p->pos.X - p->bobpos.X) * (p->pos.X - p->bobpos.X) + (p->pos.Y - p->bobpos.Y) * (p->pos.Y - p->bobpos.Y)), 0, 512); if (p->on_ground) p->bobcounter += p->GetActor()->spr.xvel >> 1; - p->backuppos(ud.clipping == 0 && (p->cursector->floorpicnum == MIRROR || !p->insector())); + p->backuppos(ud.clipping == 0 && ((p->insector() && p->cursector->floorpicnum == MIRROR) || !p->insector())); // Shrinking code diff --git a/source/games/duke/src/player_r.cpp b/source/games/duke/src/player_r.cpp index 768aefa5a..dee0c624f 100644 --- a/source/games/duke/src/player_r.cpp +++ b/source/games/duke/src/player_r.cpp @@ -3566,7 +3566,7 @@ void processinput_r(int snum) pact->spr.xvel = clamp(ksqrt((p->pos.X - p->bobpos.X) * (p->pos.X - p->bobpos.X) + (p->pos.Y - p->bobpos.Y) * (p->pos.Y - p->bobpos.Y)), 0, 512); if (p->on_ground) p->bobcounter += p->GetActor()->spr.xvel >> 1; - p->backuppos(ud.clipping == 0 && (p->cursector->floorpicnum == MIRROR || !p->insector())); + p->backuppos(ud.clipping == 0 && ((p->insector() && p->cursector->floorpicnum == MIRROR) || !p->insector())); // Shrinking code