(svn r28) -Fix removing station merged with oilrig, will reset oilrigs ownership
authordarkvater
Thu, 12 Aug 2004 20:24:28 +0000
changeset 27 87c8058a69b5
parent 26 4c08274a29dc
child 28 635ad4c62bec
(svn r28) -Fix removing station merged with oilrig, will reset oilrigs ownership
station_cmd.c
--- a/station_cmd.c	Thu Aug 12 17:49:16 2004 +0000
+++ b/station_cmd.c	Thu Aug 12 20:24:28 2004 +0000
@@ -538,8 +538,16 @@
 static void DeleteStationIfEmpty(Station *st) {
 	if (st->facilities == 0) {
 		st->delete_ctr = 0;
+	}
+
+	// if a station next to an oilrig is removed, fix ownership
+	if (st->airport_type == AT_OILRIG && st->facilities == (FACIL_AIRPORT|FACIL_DOCK) ) {
+		_station_sort_dirty = true;
 		InvalidateWindow(WC_STATION_LIST, st->owner);
+		st->owner = 0x10;
 	}
+
+	InvalidateWindow(WC_STATION_LIST, st->owner);
 }
 
 // Tries to clear the given area. Returns the cost in case of success.
@@ -2319,7 +2327,7 @@
 			_map3_hi[tile] = 0;
 			_map2[tile] = st->index;
 
-			st->owner = 0x10;
+			st->owner = OWNER_NONE;
       st->airport_flags = 0;
 			st->airport_type = AT_OILRIG;
 			st->xy = tile;