From 0aba2f607ba0cdfc723d41ea2bb4dc24b1ccb6cc Mon Sep 17 00:00:00 2001
From: Monster Iestyn <iestynjealous@ntlworld.com>
Date: Wed, 20 Apr 2016 18:04:51 +0100
Subject: [PATCH] Fix FOFs with FF_CUTSOLIDS but not FF_SOLID causing software
 renderer problems and even crashes

Always wondered why a flag meant for FOF physics was used in the rendering code, lol
---
 src/r_segs.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/r_segs.c b/src/r_segs.c
index 3171bced67..d656108f61 100644
--- a/src/r_segs.c
+++ b/src/r_segs.c
@@ -1352,7 +1352,7 @@ static void R_RenderSegLoop (void)
 			for (i = 0; i < dc_numlights; i++)
 			{
 				dc_lightlist[i].height += dc_lightlist[i].heightstep;
-				if (dc_lightlist[i].flags & FF_SOLID)
+				if (dc_lightlist[i].flags & FF_CUTSOLIDS)
 					dc_lightlist[i].botheight += dc_lightlist[i].botheightstep;
 			}
 		}
@@ -2001,7 +2001,7 @@ void R_StoreWallRange(INT32 start, INT32 stop)
 			rlight->heightstep = -FixedMul (rw_scalestep, (light->height - viewz) >> 4);
 			rlight->flags = light->flags;
 
-			if (light->caster && light->caster->flags & FF_SOLID)
+			if (light->caster && light->caster->flags & FF_CUTSOLIDS)
 			{
 				rlight->botheight = (centeryfrac >> 4) - FixedMul((*light->caster->bottomheight - viewz) >> 4, rw_scale);
 				rlight->botheightstep = -FixedMul (rw_scalestep, (*light->caster->bottomheight - viewz) >> 4);
-- 
GitLab