From 3be30b8842dfb1697b49f9e46e3d499132eb39bb Mon Sep 17 00:00:00 2001 From: tron Date: Wed, 17 Jan 2007 22:32:34 +0000 Subject: [PATCH] (svn r8212) -Fix Remove the unnecessary attribute RoadStop::used. The same information can be derived from RoadStop::xy --- src/station.cpp | 2 -- src/station.h | 5 ++--- src/station_cmd.cpp | 7 +++++-- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/station.cpp b/src/station.cpp index d3eff6bb1a..b718a0aacc 100644 --- a/src/station.cpp +++ b/src/station.cpp @@ -350,7 +350,6 @@ void RoadStop::operator delete(void *p, int index) /** Initializes a RoadStop */ RoadStop::RoadStop(TileIndex tile) : xy(tile), - used(true), status(3), // stop is free num_vehicles(0), next(NULL), @@ -377,7 +376,6 @@ RoadStop::~RoadStop() if (prev != NULL) prev->next = next; if (next != NULL) next->prev = prev; - used = false; DEBUG(ms, cDebugCtorLevel , "I- at %d[0x%x]", xy, xy); xy = INVALID_TILE; diff --git a/src/station.h b/src/station.h index 7d0ec21fa5..7299b87f76 100644 --- a/src/station.h +++ b/src/station.h @@ -46,9 +46,8 @@ enum { typedef struct RoadStop { TileIndex xy; - bool used; - byte status; RoadStopID index; + byte status; byte num_vehicles; struct RoadStop *next; struct RoadStop *prev; @@ -258,7 +257,7 @@ DECLARE_OLD_POOL(RoadStop, RoadStop, 5, 2000) */ static inline bool IsValidRoadStop(const RoadStop *rs) { - return rs->used; + return rs->xy != INVALID_TILE; } #define FOR_ALL_ROADSTOPS_FROM(rs, start) for (rs = GetRoadStop(start); rs != NULL; rs = (rs->index + 1U < GetRoadStopPoolSize()) ? GetRoadStop(rs->index + 1U) : NULL) if (IsValidRoadStop(rs)) diff --git a/src/station_cmd.cpp b/src/station_cmd.cpp index 1d0f2befb7..b66d64b058 100644 --- a/src/station_cmd.cpp +++ b/src/station_cmd.cpp @@ -68,7 +68,10 @@ static void RoadStopPoolNewBlock(uint start_item) /* We don't use FOR_ALL here, because FOR_ALL skips invalid items. * TODO - This is just a temporary stage, this will be removed. */ - for (rs = GetRoadStop(start_item); rs != NULL; rs = (rs->index + 1U < GetRoadStopPoolSize()) ? GetRoadStop(rs->index + 1U) : NULL) rs->index = start_item++; + for (rs = GetRoadStop(start_item); rs != NULL; rs = (rs->index + 1U < GetRoadStopPoolSize()) ? GetRoadStop(rs->index + 1U) : NULL) { + rs->xy = INVALID_TILE; + rs->index = start_item++; + } } DEFINE_OLD_POOL(Station, Station, StationPoolNewBlock, StationPoolCleanBlock) @@ -2847,7 +2850,7 @@ extern const TileTypeProcs _tile_type_station_procs = { static const SaveLoad _roadstop_desc[] = { SLE_VAR(RoadStop,xy, SLE_UINT32), - SLE_VAR(RoadStop,used, SLE_BOOL), + SLE_CONDNULL(1, 0, 44), SLE_VAR(RoadStop,status, SLE_UINT8), /* Index was saved in some versions, but this is not needed */ SLE_CONDNULL(4, 0, 8),