- fixed: IsPointInLevel must explicitly check for minisegs, which can be one-sided on maps with unclosed sectors.

Obviously, in such a case it is impossible to decide whether a point is really inside the map, so if this happens, behavior is undefined.
This commit is contained in:
Christoph Oelckers 2019-03-10 19:07:48 +01:00
parent 90c47e7497
commit 561d5a3d8b

View file

@ -2142,9 +2142,9 @@ int IsPointInMap(FLevelLocals *Level, double x, double y, double z)
for (uint32_t i = 0; i < subsector->numlines; i++)
{
// Skip single sided lines.
// Skip double sided lines.
seg_t *seg = subsector->firstline + i;
if (seg->backsector != nullptr) continue;
if (seg->backsector != nullptr || seg->linedef == nullptr) continue;
divline_t dline;
P_MakeDivline(seg->linedef, &dline);