(svn r27425) -Fix [FS#5842]: Crash when switching to or taking over companies, when an order window of a vehicle of the new company was opened. Now close those windows.
This commit is contained in:
@@ -1713,6 +1713,12 @@ void ShowOrdersWindow(const Vehicle *v)
|
||||
DeleteWindowById(WC_VEHICLE_TIMETABLE, v->index, false);
|
||||
if (BringWindowToFrontById(WC_VEHICLE_ORDERS, v->index) != NULL) return;
|
||||
|
||||
/* Using a different WindowDescs for _local_company causes problems.
|
||||
* Due to this we have to close order windows in ChangeWindowOwner/DeleteCompanyWindows,
|
||||
* because we cannot change switch the WindowDescs and keeping the old WindowDesc results
|
||||
* in crashed due to missing widges.
|
||||
* TODO Rewrite the order GUI to not use different WindowDescs.
|
||||
*/
|
||||
if (v->owner != _local_company) {
|
||||
new OrdersWindow(&_other_orders_desc, v);
|
||||
} else {
|
||||
|
Reference in New Issue
Block a user