Purpose of leash?

Hi guys,

I have been looking at how waypoint following is implemented in the arducopter software and it seems like there is a leash connecting the vehicle to a given target point. This target point then moves along the path between two waypoints. What is the purpose of the leash?
The leash is calculated e.g. here https://github.com/ArduPilot/ardupilot/blob/8681911a0b3676cf676933e8e0610b609440ba61/libraries/AC_AttitudeControl/AC_PosControl.cpp#L338

and here: https://github.com/ArduPilot/ardupilot/blob/8681911a0b3676cf676933e8e0610b609440ba61/libraries/AC_AttitudeControl/AC_PosControl.cpp#L758