Maybe you should add "try...finally" to confirm cleanup will be executed anyhow.