diff --git a/src/openrct2/ride/Ride.cpp b/src/openrct2/ride/Ride.cpp index 698d455d41..337f269f5e 100644 --- a/src/openrct2/ride/Ride.cpp +++ b/src/openrct2/ride/Ride.cpp @@ -2868,8 +2868,8 @@ static void ride_set_boat_hire_return_point(Ride* ride, CoordsXYE* startElement) trackType = trackBeginEnd.begin_element->AsTrack()->GetTrackType(); auto newCoords = GetTrackElementOriginAndApplyChanges( { trackCoords, static_cast(direction) }, trackType, 0, &returnPos.element, 0); - returnPos = !newCoords.has_value() ? CoordsXYE{ trackCoords, returnPos.element } - : CoordsXYE{ *newCoords, returnPos.element }; + returnPos = newCoords.has_value() ? CoordsXYE{ newCoords.value(), returnPos.element } + : CoordsXYE{ trackCoords, returnPos.element }; }; trackType = returnPos.element->AsTrack()->GetTrackType();