Corrected a stupid omission to set the plane hint during a search

in "extresist", which when missing causes the plane to be searched
repeatedly from the same point instead of from the last place searched.
Can knock down the "extresist" time by up to 50%.
This commit is contained in:
R. Timothy Edwards 2026-05-24 22:01:29 -04:00
parent 099d513011
commit 7ecebb5dd6
2 changed files with 5 additions and 0 deletions

View File

@ -449,6 +449,7 @@ ResFindNewContactTiles(contacts)
tile = PlaneGetHint(ResDef->cd_planes[pNum]);
GOTOPOINT(tile, &(contacts->cp_center));
PlaneSetHint(ResDef->cd_planes[pNum], tile);
#ifdef PARANOID
if (tile == (Tile *) NULL)
{
@ -1412,6 +1413,7 @@ FindStartTile(resisdata, SourcePoint)
{
tile = PlaneGetHint(ResUse->cu_def->cd_planes[pnum]);
GOTOPOINT(tile, &workingPoint);
PlaneSetHint(ResUse->cu_def->cd_planes[pnum], tile);
SourcePoint->p_x = workingPoint.p_x;
SourcePoint->p_y = workingPoint.p_y;
@ -1445,6 +1447,7 @@ FindStartTile(resisdata, SourcePoint)
tile = PlaneGetHint(ResUse->cu_def->cd_planes[pnum]);
GOTOPOINT(tile, &workingPoint);
PlaneSetHint(ResUse->cu_def->cd_planes[pnum], tile);
if (IsSplit(tile))
{
@ -1796,6 +1799,7 @@ ResGetDevice(pt, type)
tile = PlaneGetHint(ResUse->cu_def->cd_planes[pnum]);
GOTOPOINT(tile, &workingPoint);
PlaneSetHint(ResUse->cu_def->cd_planes[pnum], tile);
const ClientData ticlient = TiGetClient(tile);
if (IsSplit(tile))

View File

@ -733,6 +733,7 @@ ResPreProcessDevices(TileList, DeviceList, Def)
tile = PlaneGetHint(Def->cd_planes[pNum]);
GOTOPOINT(tile, &(TileList->area.r_ll));
PlaneSetHint(Def->cd_planes[pNum], tile);
tt = TiGetType(tile);
tstruct = (resInfo *) TiGetClientPTR(tile);