Why is this run in a finally block, wouldn't it make more sense to just run it in the catch block, as it is only applicable when there is an exception?