This also affects weak leveling and relayattitude, so it can't be limited to just that once case.

That being said, your point is sound. Perhaps we should only calculate local_error for those three cases, instead of running the calculation no matter the mode.