diff --git a/src/station_cmd.cpp b/src/station_cmd.cpp
index 9d47cfb22c..38a1af4947 100644
--- a/src/station_cmd.cpp
+++ b/src/station_cmd.cpp
@@ -1908,7 +1908,7 @@ static CommandCost RemoveBuoy(Station *st, uint32 flags)
 		/* We have to set the water tile's state to the same state as before the
 		 * buoy was placed. Otherwise one could plant a buoy on a canal edge,
 		 * remove it and flood the land (if the canal edge is at level 0) */
-		MakeWaterOrCanalDependingOnSurroundings(tile, GetTileOwner(tile));
+		MakeWaterOrCanalDependingOnOwner(tile, GetTileOwner(tile));
 		MarkTileDirtyByTile(tile);
 
 		UpdateStationVirtCoordDirty(st);
diff --git a/src/water.h b/src/water.h
index e279119f11..27f411e0f9 100644
--- a/src/water.h
+++ b/src/water.h
@@ -8,6 +8,7 @@
 void TileLoop_Water(TileIndex tile);
 void DrawShipDepotSprite(int x, int y, int image);
 void DrawCanalWater(TileIndex tile);
+void MakeWaterOrCanalDependingOnOwner(TileIndex tile, Owner o);
 void MakeWaterOrCanalDependingOnSurroundings(TileIndex t, Owner o);
 
 #endif /* WATER_H */
diff --git a/src/water_cmd.cpp b/src/water_cmd.cpp
index 5529b8a3c3..f26e3a1093 100644
--- a/src/water_cmd.cpp
+++ b/src/water_cmd.cpp
@@ -140,7 +140,7 @@ CommandCost CmdBuildShipDepot(TileIndex tile, uint32 flags, uint32 p1, uint32 p2
 	return cost.AddCost(_price.build_ship_depot);
 }
 
-static void MakeWaterOrCanalDependingOnOwner(TileIndex tile, Owner o)
+void MakeWaterOrCanalDependingOnOwner(TileIndex tile, Owner o)
 {
 	if (o == OWNER_WATER) {
 		MakeWater(tile);