why we don't swallow exception here for close?