If you look at path_manager.c, you can see that simple_return_to_home() is only compiled if the path planner module isn't. So the two won't run at the same time, or else you get exactly the behavior you describe.

The path planner takes waypoints and turns them into path segment descriptors. The path manager doesn't care where segment descriptors come from, so it doesn't need the path planner to run or even exist. Makes sense?