diff --git a/docs/landscape.html b/docs/landscape.html
index 2101ea965b..f60e859fc3 100644
--- a/docs/landscape.html
+++ b/docs/landscape.html
@@ -549,6 +549,7 @@
+
m3 bits 7..4: owner of road type 1 (tram); OWNER_NONE (10) is stored as OWNER_TOWN (0F)
m5 bits 7 clear: road or level-crossing
- m6 bits 5..3:
@@ -583,7 +584,6 @@
- - m3 bits 7..4: owner of road type 1 (tram); OWNER_NONE (10) is stored as OWNER_TOWN (0F)
- m5 bit 6 clear: road
- m1 bits 4..0: owner of the road type 0 (normal road)
@@ -673,6 +673,7 @@
+ - m7 bits 4..0: owner of the road type 0 (normal road)
diff --git a/docs/landscape_grid.html b/docs/landscape_grid.html
index 0e0e86e345..98351fcdcc 100644
--- a/docs/landscape_grid.html
+++ b/docs/landscape_grid.html
@@ -158,11 +158,11 @@ the array so you can quickly see what is used and what is not.
-inherit- |
-inherit- |
-inherit- |
- OOOO OOOO |
+ XXXX OOOO |
OOOO OOOO |
XXOO OOXX |
OOOO OOOO |
- XXXO OOOO |
+ XXXO XXXX |
3 |
diff --git a/src/road_cmd.cpp b/src/road_cmd.cpp
index cdcedf4607..e56633696a 100644
--- a/src/road_cmd.cpp
+++ b/src/road_cmd.cpp
@@ -1762,6 +1762,11 @@ static void ChangeTileOwner_Road(TileIndex tile, Owner old_owner, Owner new_owne
Company::Get(new_owner)->infrastructure.road[rt] += 2;
SetTileOwner(tile, new_owner);
+ for (RoadType rt = ROADTYPE_ROAD; rt < ROADTYPE_END; rt++) {
+ if (GetRoadOwner(tile, rt) == old_owner) {
+ SetRoadOwner(tile, rt, new_owner);
+ }
+ }
}
}
return;