- Backport from GZDoom: P_LoopSidedefs() needed another fix as it shouldn't try to report errors found on the second loop.

SVN r2544 (trunk)
This commit is contained in:
Christoph Oelckers 2010-08-15 14:09:17 +00:00
parent 66f6115c86
commit 0657121847

View file

@ -2128,7 +2128,7 @@ static void P_AllocateSideDefs (int count)
// [RH] Group sidedefs into loops so that we can easily determine
// what walls any particular wall neighbors.
static void P_LoopSidedefs ()
static void P_LoopSidedefs (bool firstloop)
{
int i;
@ -2193,7 +2193,7 @@ static void P_LoopSidedefs ()
right = sidetemp[right].b.first;
if (right == NO_SIDE)
if (firstloop && right == NO_SIDE)
{ // There is no right side!
Printf ("Line %d's right edge is unconnected\n", linemap[unsigned(line-lines)]);
continue;
@ -3655,7 +3655,7 @@ void P_SetupLevel (char *lumpname, int position)
}
times[6].Clock();
P_LoopSidedefs ();
P_LoopSidedefs (true);
times[6].Unclock();
linemap.Clear();
@ -3845,9 +3845,7 @@ void P_SetupLevel (char *lumpname, int position)
P_SpawnSpecials ();
times[16].Clock();
// The old sidedef looping data is no longer valid if the nodes were rebuilt
// and vertexes merged so it has to be redone before setting up the polyobjects.
if (ForceNodeBuild) P_LoopSidedefs ();
if (ForceNodeBuild) P_LoopSidedefs (false);
PO_Init (); // Initialize the polyobjs
times[16].Unclock();