From 13fd2cd335f1162758348ae3e2e9c2a1a4cc5602 Mon Sep 17 00:00:00 2001 From: rubidium Date: Fri, 11 Feb 2011 09:33:38 +0000 Subject: (svn r22057) -Fix: waypoint conversion could (previously) silently overfill the pool and crash --- src/saveload/waypoint_sl.cpp | 2 ++ 1 file changed, 2 insertions(+) (limited to 'src/saveload/waypoint_sl.cpp') diff --git a/src/saveload/waypoint_sl.cpp b/src/saveload/waypoint_sl.cpp index 3dce9e3d5..9d1f164b4 100644 --- a/src/saveload/waypoint_sl.cpp +++ b/src/saveload/waypoint_sl.cpp @@ -93,6 +93,8 @@ void MoveWaypointsToBaseStations() } } + if (!Waypoint::CanAllocateItem(_old_waypoints.Length())) SlError(STR_ERROR_TOO_MANY_STATIONS_LOADING); + /* All saveload conversions have been done. Create the new waypoints! */ for (OldWaypoint *wp = _old_waypoints.Begin(); wp != _old_waypoints.End(); wp++) { Waypoint *new_wp = new Waypoint(wp->xy); -- cgit v1.2.3-54-g00ecf