check if we are finishing already (this usually gets triggered from inside onDestroy() and avoid duplicating the finish call.