diff --git a/src/g_game.c b/src/g_game.c
index 18b7ea4a81bc70f3d0b05066fb5a944a928f7e37..e0af9496d42db0417beee3be5b37c7bf9d3233f4 100644
--- a/src/g_game.c
+++ b/src/g_game.c
@@ -2820,10 +2820,11 @@ static boolean G_CheckSpot(INT32 playernum, mapthing_t *mthing)
 	x = mthing->x << FRACBITS;
 	y = mthing->y << FRACBITS;
 
-	if (!P_CheckPosition(players[playernum].mo, x, y))
-		return false;
+	mobj_t *ptmthing = tmthing;
+	boolean success = P_CheckPosition(players[playernum].mo, x, y);
+	P_SetTarget(&tmthing, ptmthing);
 
-	return true;
+	return success;
 }
 
 //