From 9a20c47b42b1e60bc6e1d4368e9773b4b93f350b Mon Sep 17 00:00:00 2001 From: Patric Stout Date: Fri, 11 Mar 2022 16:18:09 +0100 Subject: [PATCH] Fix: removing long roads doesn't prioritize refusal of local authority over other errors (#9831) --- src/road_cmd.cpp | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/road_cmd.cpp b/src/road_cmd.cpp index 70a014434e..71a027f3ac 100644 --- a/src/road_cmd.cpp +++ b/src/road_cmd.cpp @@ -1137,8 +1137,14 @@ CommandCost CmdRemoveLongRoad(TileIndex start_tile, DoCommandFlag flags, uint32 cost.AddCost(ret); had_success = true; } else { - /* Ownership errors are more important. */ - if (last_error.GetErrorMessage() != STR_ERROR_OWNED_BY) last_error = ret; + /* Some errors are more equal than others. */ + switch (last_error.GetErrorMessage()) { + case STR_ERROR_OWNED_BY: + case STR_ERROR_LOCAL_AUTHORITY_REFUSES_TO_ALLOW_THIS: + break; + default: + last_error = ret; + } } }