# HG changeset patch # User tron # Date 1154194798 0 # Node ID 2acef650361fa00fe4fb99ab02582304c4551dce # Parent fcc29d7b6722612926d67c3fbeab292fd40834cb (svn r5632) Replace a boolean variable in DeallocateSpecFromStation() by a return Also set the return type to void, because the caller doesn't care about it diff -r fcc29d7b6722 -r 2acef650361f newgrf_station.c --- a/newgrf_station.c Sat Jul 29 13:06:00 2006 +0000 +++ b/newgrf_station.c Sat Jul 29 17:39:58 2006 +0000 @@ -582,42 +582,35 @@ * @param specindex Index of the custom station within the Station's spec list. * @return Indicates whether the StationSpec was deallocated. */ -bool DeallocateSpecFromStation(Station *st, byte specindex) +void DeallocateSpecFromStation(Station* st, byte specindex) { - bool freeable = true; - /* specindex of 0 (default) is never freeable */ - if (specindex == 0) return false; + if (specindex == 0) return; /* Check all tiles over the station to check if the specindex is still in use */ BEGIN_TILE_LOOP(tile, st->trainst_w, st->trainst_h, st->train_tile) { if (IsTileType(tile, MP_STATION) && GetStationIndex(tile) == st->index && IsRailwayStation(tile) && GetCustomStationSpecIndex(tile) == specindex) { - freeable = false; - break; + return; } } END_TILE_LOOP(tile, st->trainst_w, st->trainst_h, st->train_tile) - if (freeable) { - /* This specindex is no longer in use, so deallocate it */ - st->speclist[specindex].spec = NULL; - st->speclist[specindex].grfid = 0; - st->speclist[specindex].localidx = 0; + /* This specindex is no longer in use, so deallocate it */ + st->speclist[specindex].spec = NULL; + st->speclist[specindex].grfid = 0; + st->speclist[specindex].localidx = 0; - /* If this was the highest spec index, reallocate */ - if (specindex == st->num_specs - 1) { - for (; st->speclist[st->num_specs - 1].grfid == 0 && st->num_specs > 1; st->num_specs--); + /* If this was the highest spec index, reallocate */ + if (specindex == st->num_specs - 1) { + for (; st->speclist[st->num_specs - 1].grfid == 0 && st->num_specs > 1; st->num_specs--); - if (st->num_specs > 1) { - st->speclist = realloc(st->speclist, st->num_specs * sizeof(*st->speclist)); - } else { - free(st->speclist); - st->num_specs = 0; - st->speclist = NULL; - } + if (st->num_specs > 1) { + st->speclist = realloc(st->speclist, st->num_specs * sizeof(*st->speclist)); + } else { + free(st->speclist); + st->num_specs = 0; + st->speclist = NULL; } } - - return freeable; } /** Draw representation of a station tile for GUI purposes. diff -r fcc29d7b6722 -r 2acef650361f newgrf_station.h --- a/newgrf_station.h Sat Jul 29 13:06:00 2006 +0000 +++ b/newgrf_station.h Sat Jul 29 17:39:58 2006 +0000 @@ -120,7 +120,7 @@ int AllocateSpecToStation(const StationSpec *statspec, Station *st, bool exec); /* Deallocate a StationSpec from a Station. Called when removing a single station tile. */ -bool DeallocateSpecFromStation(Station *st, byte specindex); +void DeallocateSpecFromStation(Station* st, byte specindex); /* Draw representation of a station tile for GUI purposes. */ bool DrawStationTile(int x, int y, RailType railtype, Axis axis, StationClassID sclass, uint station);