(svn r11872) -Fix (r9874): EngineHasReplacementForPlayer() didn't look in ALL_GROUP
--- a/src/engine.cpp Wed Jan 16 01:18:15 2008 +0000
+++ b/src/engine.cpp Wed Jan 16 01:27:24 2008 +0000
@@ -507,6 +507,10 @@
EngineID EngineReplacement(EngineRenewList erl, EngineID engine, GroupID group)
{
const EngineRenew *er = GetEngineReplacement(erl, engine, group);
+ if (er == NULL && (group == DEFAULT_GROUP || (IsValidGroupID(group) && !GetGroup(group)->replace_protection))) {
+ /* We didn't find anything useful in the vehicle's own group so we will try ALL_GROUP */
+ er = GetEngineReplacement(erl, engine, ALL_GROUP);
+ }
return er == NULL ? INVALID_ENGINE : er->to;
}