does it error on the first breakable object.. or the first breakable object that has been broken?

Are you freeing up objects as you go and then attempting to free them again at the end?