diff --git a/src/p_map.c b/src/p_map.c
index 3f1f6caf5427eea0d652ae5f9f86b272291dd5c2..db6df59dc4c51b3aa7d60a6563b0264889c19a46 100644
--- a/src/p_map.c
+++ b/src/p_map.c
@@ -3343,16 +3343,10 @@ static boolean PTR_LineIsBlocking(line_t *li)
 static void PTR_GlideClimbTraverse(line_t *li)
 {
 	line_t *checkline = li;
-	sector_t *checksector;
 	ffloor_t *rover;
 	fixed_t topheight, bottomheight;
 	boolean fofline = false;
-	INT32 side = P_PointOnLineSide(slidemo->x, slidemo->y, li);
-
-	if (!side && li->backsector)
-		checksector = li->backsector;
-	else
-		checksector = li->frontsector;
+	sector_t *checksector = (li->backsector && !P_PointOnLineSide(slidemo->x, slidemo->y, li)) ? li->backsector : li->frontsector;
 
 	if (checksector->ffloors)
 	{