fix: possible double free's on cleanup when HUP recieved.