Actually that is a good point.  There is no check that if geofencing is enabled in modules that it is running.  That should be added to sanity check.

However, I'm pretty against crashing because the module becomes invalid.  The only case I can imagine where this _should_ happen after takeoff would be if they upload a new geofence and then crash.  No one will be pleased with that behavior.

If it is invalid the combination of ensuring geofencing is running and geofencing setting a critical alarm will ensure no one can take off and this code is never executed.

As an aide I would also prefer to ensure the geofence logic is _never_ selected when it is invalid.