From 2af5f7de98ee8d5dcfe9dae9b524ceaa817a79b8 Mon Sep 17 00:00:00 2001
From: Marko Lindqvist <cazfi74@gmail.com>
Date: Wed, 22 May 2024 15:12:31 +0300
Subject: [PATCH 77/77] city_freeze_workers_queue(): Set needs_arrange for
 cities already in queue

See RM #661

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
---
 server/citytools.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/server/citytools.c b/server/citytools.c
index d9332656e7..b687c07b74 100644
--- a/server/citytools.c
+++ b/server/citytools.c
@@ -162,6 +162,11 @@ void city_freeze_workers_queue(struct city *pcity)
   if (arrange_workers_queue == nullptr) {
     arrange_workers_queue = city_list_new();
   } else if (city_list_find_number(arrange_workers_queue, pcity->id)) {
+    /* City might have been arranged since it was originally put to the queue.
+     * Make sure needs_arrange is set again. */
+    if (pcity->server.needs_arrange == CNA_NOT) {
+      pcity->server.needs_arrange = CNA_NORMAL;
+    }
     return;
   }
 
-- 
2.43.0

