From 627d971ad79585a8e96324d5ab16c8ca1452dce6 Mon Sep 17 00:00:00 2001 From: Marko Lindqvist Date: Sat, 16 Jul 2022 01:28:49 +0300 Subject: [PATCH 42/42] Send nation groups data before requirement vectors may need it As the client was unaware of what are the legal nation group indices, it was turning nation group requirements to invalid requirements Reported by dark-ether See osdn #45109 Signed-off-by: Marko Lindqvist --- server/ruleset.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/server/ruleset.c b/server/ruleset.c index 32b1d3ba85..8184e506e4 100644 --- a/server/ruleset.c +++ b/server/ruleset.c @@ -9356,6 +9356,11 @@ void send_rulesets(struct conn_list *dest) /* ruleset_control also indicates to client that ruleset sending starts. */ send_ruleset_control(dest); + /* Currently containing control-kind of data of nation sets and groups, + * this too must be sent before any requirement vector may depend on + * that data. */ + send_ruleset_nations(dest); + send_ruleset_game(dest); send_ruleset_disasters(dest); send_ruleset_achievements(dest); @@ -9377,7 +9382,6 @@ void send_rulesets(struct conn_list *dest) send_ruleset_terrain(dest); send_ruleset_goods(dest); send_ruleset_buildings(dest); - send_ruleset_nations(dest); send_ruleset_styles(dest); send_ruleset_clauses(dest); send_ruleset_cities(dest); -- 2.35.1