(svn r14265) -Fix (r10750): desyncs after deleting a waypoint because of explicit destructor call instead of using operator delete

This commit is contained in:
smatz 2008-09-07 18:21:57 +00:00
parent 947f4bf213
commit 85b1ae6ad7
2 changed files with 1 additions and 6 deletions

View File

@ -293,7 +293,7 @@ void WaypointsDailyLoop()
/* Check if we need to delete a waypoint */
FOR_ALL_WAYPOINTS(wp) {
if (wp->deleted != 0 && --wp->deleted == 0) DeleteWaypoint(wp);
if (wp->deleted != 0 && --wp->deleted == 0) delete wp;
}
}

View File

@ -44,11 +44,6 @@ static inline bool IsValidWaypointID(WaypointID index)
return index < GetWaypointPoolSize() && GetWaypoint(index)->IsValid();
}
static inline void DeleteWaypoint(Waypoint *wp)
{
wp->~Waypoint();
}
#define FOR_ALL_WAYPOINTS_FROM(wp, start) for (wp = GetWaypoint(start); wp != NULL; wp = (wp->index + 1U < GetWaypointPoolSize()) ? GetWaypoint(wp->index + 1U) : NULL) if (wp->IsValid())
#define FOR_ALL_WAYPOINTS(wp) FOR_ALL_WAYPOINTS_FROM(wp, 0)