diff options
Diffstat (limited to 'src/rail_gui.cpp')
-rw-r--r-- | src/rail_gui.cpp | 9 |
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 */ |