- Various fixes for compiling working 64-bit binaries with Visual C++. The

number of changes was pleasantly small, and a cursory check seems to show
  everything working alright.


SVN r948 (trunk)
This commit is contained in:
Randy Heit 2008-04-29 02:43:42 +00:00
commit bc5f49dd49
23 changed files with 470 additions and 112 deletions

View file

@ -71,7 +71,9 @@ void FNodeBuilder::Extract (node_t *&outNodes, int &nodeCount,
memcpy (outNodes, &Nodes[0], nodeCount*sizeof(node_t));
for (i = 0; i < nodeCount; ++i)
{
for (int j = 0; j < 2; ++j)
// Go backwards because on 64-bit systems, both of the intchildren are
// inside the first in-game child.
for (int j = 1; j >= 0; --j)
{
if (outNodes[i].intchildren[j] & 0x80000000)
{
@ -351,7 +353,7 @@ DWORD FNodeBuilder::PushGLSeg (TArray<seg_t> &segs, const FPrivSeg *seg, vertex_
newseg.sidedef = NULL;
}
newseg.PartnerSeg = (seg_t *)(seg->partner == DWORD_MAX ? 0 : (size_t)seg->partner + 1);
newseg.bPolySeg = false;
newseg.bPolySeg = false;
newseg.Subsector = NULL;
return (DWORD)segs.Push (newseg);
}
@ -367,7 +369,7 @@ void FNodeBuilder::PushConnectingGLSeg (int subsector, TArray<seg_t> &segs, vert
newseg.linedef = NULL;
newseg.sidedef = NULL;
newseg.PartnerSeg = NULL;
newseg.bPolySeg = false;
newseg.bPolySeg = false;
newseg.Subsector = NULL;
segs.Push (newseg);
}