# HG changeset patch # User bjarni # Date 2008-01-16 01:27:24 # Node ID 9134ffc32c1b25a0f1d95cbebd38ac9f6b1f35b9 # Parent a191fc6e2f8ee14d28e82204171a39d6e29ca75b (svn r11872) -Fix (r9874): EngineHasReplacementForPlayer() didn't look in ALL_GROUP diff --git a/src/engine.cpp b/src/engine.cpp --- a/src/engine.cpp +++ b/src/engine.cpp @@ -507,6 +507,10 @@ void RemoveAllEngineReplacement(EngineRe 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; }