summaryrefslogtreecommitdiff
path: root/src/rail_gui.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/rail_gui.cpp')
-rw-r--r--src/rail_gui.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/rail_gui.cpp b/src/rail_gui.cpp
index c30e63017..1d9302872 100644
--- a/src/rail_gui.cpp
+++ b/src/rail_gui.cpp
@@ -254,7 +254,14 @@ static void GenericPlaceSignals(TileIndex tile)
static void PlaceRail_Bridge(TileIndex tile)
{
- VpStartPlaceSizing(tile, VPM_X_OR_Y, DDSP_BUILD_BRIDGE);
+ if (IsBridgeTile(tile)) {
+ TileIndex other_tile = GetOtherTunnelBridgeEnd(tile);
+ Window *w = GetCallbackWnd();
+ Point pt = {0, 0};
+ if (w != NULL) w->OnPlaceMouseUp(VPM_X_OR_Y, DDSP_BUILD_BRIDGE, pt, tile, other_tile);
+ } else {
+ VpStartPlaceSizing(tile, VPM_X_OR_Y, DDSP_BUILD_BRIDGE);
+ }
}
/** Command callback for building a tunnel */