From 9e53f1e004bf8e65f268b8854a6eb08229e3f2ed Mon Sep 17 00:00:00 2001 From: frosch Date: Sat, 5 Jun 2010 13:32:42 +0000 Subject: (svn r19933) -Fix [FS#3804]: Keep _current_company and _local_company in sync during GUI operation. --- src/network/network_command.cpp | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'src/network/network_command.cpp') diff --git a/src/network/network_command.cpp b/src/network/network_command.cpp index 71724b509..2869d8b8b 100644 --- a/src/network/network_command.cpp +++ b/src/network/network_command.cpp @@ -153,6 +153,8 @@ void NetworkSyncCommandQueue(NetworkClientSocket *cs) */ void NetworkExecuteLocalCommandQueue() { + assert(_current_company == _local_company); + while (_local_command_queue != NULL) { /* The queue is always in order, which means @@ -175,6 +177,9 @@ void NetworkExecuteLocalCommandQueue() _local_command_queue = _local_command_queue->next; free(cp); } + + /* Local company may have changed, so we should not restore the old value */ + _current_company = _local_company; } /** -- cgit v1.2.3-54-g00ecf