should we do this in try / finally ?