Mercurial > hg > openttd
changeset 6023:5c1152d41f0f draft
(svn r8746) -Regression r8331: build train window could sort incorrectly by EngineID with certain newGRF sets
author | bjarni <bjarni@openttd.org> |
---|---|
date | Thu, 15 Feb 2007 17:51:39 +0000 |
parents | 77a5708ac3f8 |
children | 7558c046b94d |
files | src/build_vehicle_gui.cpp |
diffstat | 1 files changed, 10 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/src/build_vehicle_gui.cpp +++ b/src/build_vehicle_gui.cpp @@ -224,6 +224,15 @@ return _internal_sort_order ? -r : r; } +static int CDECL TrainEngineNumberSorter(const void *a, const void *b) +{ + const EngineID va = *(const EngineID*)a; + const EngineID vb = *(const EngineID*)b; + int r = ListPositionOfEngine(va) - ListPositionOfEngine(vb); + + return _internal_sort_order ? -r : r; +} + static int CDECL TrainEnginesThenWagonsSorter(const void *a, const void *b) { EngineID va = *(const EngineID*)a; @@ -290,7 +299,7 @@ static EngList_SortTypeFunction * const _sorter[][9] = {{ /* Trains */ - &EngineNumberSorter, + &TrainEngineNumberSorter, &TrainEngineCostSorter, &TrainEngineSpeedSorter, &TrainEnginePowerSorter,