Codechange: unify creation of diagonal/orthogonal iterator using smart pointers
This commit is contained in:
@@ -1548,7 +1548,7 @@ CommandCost CmdConvertRail(DoCommandFlag flags, TileIndex tile, TileIndex area_s
|
||||
CommandCost error = CommandCost(STR_ERROR_NO_SUITABLE_RAILROAD_TRACK); // by default, there is no track to convert.
|
||||
bool found_convertible_track = false; // whether we actually did convert some track (see bug #7633)
|
||||
|
||||
TileIterator *iter = diagonal ? (TileIterator *)new DiagonalTileIterator(area_start, area_end) : new OrthogonalTileIterator(area_start, area_end);
|
||||
std::unique_ptr<TileIterator> iter = TileIterator::Create(area_start, area_end, diagonal);
|
||||
for (; (tile = *iter) != INVALID_TILE; ++(*iter)) {
|
||||
TileType tt = GetTileType(tile);
|
||||
|
||||
@@ -1745,7 +1745,6 @@ CommandCost CmdConvertRail(DoCommandFlag flags, TileIndex tile, TileIndex area_s
|
||||
}
|
||||
}
|
||||
|
||||
delete iter;
|
||||
return found_convertible_track ? cost : error;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user