summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsmatz <smatz@openttd.org>2008-10-04 10:25:12 +0000
committersmatz <smatz@openttd.org>2008-10-04 10:25:12 +0000
commitb4a307d0bb5a9789b55331ab8edfb7d418487d60 (patch)
tree63be5f6313a4702132ff9aeb77192b49f18c1cd3
parent5f9e2e60fbf2103896cef45725b7b75e9b8ecde9 (diff)
downloadopenttd-b4a307d0bb5a9789b55331ab8edfb7d418487d60.tar.xz
(svn r14439) -Fix (r12044)(r14139): centering on a plane at the SE border could cause crash
-rw-r--r--src/viewport.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/viewport.cpp b/src/viewport.cpp
index 9448a51dd..c1e9e4d7b 100644
--- a/src/viewport.cpp
+++ b/src/viewport.cpp
@@ -2065,7 +2065,7 @@ void PlaceObject()
bool ScrollWindowTo(int x , int y, Window *w, bool instant)
{
/* The slope cannot be acquired outside of the map, so make sure we are always within the map. */
- Point pt = MapXYZToViewport(w->viewport, x, y, GetSlopeZ(Clamp(x, 0, MapSizeX() * TILE_SIZE), Clamp(y, 0, MapSizeY() * TILE_SIZE)));
+ Point pt = MapXYZToViewport(w->viewport, x, y, GetSlopeZ(Clamp(x, 0, MapSizeX() * TILE_SIZE - 1), Clamp(y, 0, MapSizeY() * TILE_SIZE - 1)));
w->viewport->follow_vehicle = INVALID_VEHICLE;
if (w->viewport->dest_scrollpos_x == pt.x && w->viewport->dest_scrollpos_y == pt.y)