Issue #34: Free path data during path_cleanup

According to the standard free(NULL) has no effect, so I decided against redundant checks. Let me know if there's another consideration I overlooked.