From 8908dcccde0f175ea0380e0a699752f581c46fa0 Mon Sep 17 00:00:00 2001
From: Eidolon <furyhunter600@gmail.com>
Date: Mon, 11 Apr 2022 20:06:52 -0500
Subject: [PATCH] Only swap view interp state if a tick is run

---
 src/g_game.c | 11 +++++++++--
 src/r_fps.c  |  8 ++++----
 2 files changed, 13 insertions(+), 6 deletions(-)

diff --git a/src/g_game.c b/src/g_game.c
index fb1c0d522b..8eb731b1ff 100644
--- a/src/g_game.c
+++ b/src/g_game.c
@@ -2363,7 +2363,11 @@ void G_Ticker(boolean run)
 			F_TextPromptTicker();
 			AM_Ticker();
 			HU_Ticker();
-			R_UpdateViewInterpolation();
+			if (run)
+			{
+				R_UpdateViewInterpolation();
+			}
+			
 
 			break;
 
@@ -2420,7 +2424,10 @@ void G_Ticker(boolean run)
 			if (titlemapinaction)
 			{
 				P_Ticker(run);
-				R_UpdateViewInterpolation();
+				if (run)
+				{
+					R_UpdateViewInterpolation();
+				}
 				// then intentionally fall through
 			}
 			/* FALLTHRU */
diff --git a/src/r_fps.c b/src/r_fps.c
index f9f1d60c0b..5ab5313466 100644
--- a/src/r_fps.c
+++ b/src/r_fps.c
@@ -34,7 +34,7 @@ static viewvars_t sky2view_old;
 static viewvars_t sky2view_new;
 
 static viewvars_t *oldview = &p1view_old;
-static BOOL oldview_valid = FALSE;
+static boolean oldview_valid = false;
 viewvars_t *newview = &p1view_new;
 
 
@@ -95,7 +95,7 @@ void R_InterpolateView(fixed_t frac)
 	if (frac > FRACUNIT)
 		frac = FRACUNIT;
 
-	if (oldview_valid == FALSE)
+	if (oldview_valid == false)
 	{
 		// interpolate from newview to newview
 		prevview = newview;
@@ -131,12 +131,12 @@ void R_UpdateViewInterpolation(void)
 	p2view_old = p2view_new;
 	sky1view_old = sky1view_new;
 	sky2view_old = sky2view_new;
-	oldview_valid = TRUE;
+	oldview_valid = true;
 }
 
 void R_ResetViewInterpolation(void)
 {
-	oldview_valid = FALSE;
+	oldview_valid = false;
 }
 
 void R_SetViewContext(enum viewcontext_e _viewcontext)
-- 
GitLab