You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Severs added manually are stored in _network_host_list table which is saved in configuration file when closing ottd. But lastly added server do not land in this table until we delete some sever or add new manual server. It's because _network_host_list is rebuilt before manual server appears in master server list:
NetworkGameWindow::OnQueryTextFinished //we entered new manual server
NetworkAddServer
NetworkUDPQueryServer
start new thread(NetworkUDPQueryServerThread) //create new thread for socket communication
NetworkRebuildHostList //rebuild _network_host_list table, but new server is not yet added
...
(in new thread)
NetworkUDPQueryServerThread
NetworkGameListAddItemDelayed //add new server to delayed insert list
...
(in next tick)
NetworkGameListHandleDelayedInsert //handle delayed inserts
NetworkGameListAddItem //add new server to master list
Possible solution:
Call NetworkRebuildHostList inside NetworkGameListHandleDelayedInsert when handling manual server insertion
adf88 opened the ticket and wrote:
Reported version: trunk
Operating system: All
This issue was imported from FlySpray: https://bugs.openttd.org/task/3062
The text was updated successfully, but these errors were encountered: