r3121: Bug #1956. Ensure errno is saved and restored consistently on a normal_close.