~ruther/guix-local

c25637dfe8aaf2aa7550c9196fb7e18820552ca6 — Ludovic Courtès 10 years ago d1f33ba
utils: 'with-atomic-file-output' closes the port upon exception.

Previously it could have left the file descriptor open.

* guix/utils.scm (with-atomic-file-output): Call 'close-port' in handler.
1 files changed, 2 insertions(+), 1 deletions(-)

M guix/utils.scm
M guix/utils.scm => guix/utils.scm +2 -1
@@ 630,7 630,8 @@ output port, and PROC's result is returned."
          (rename-file template file)
          result))
      (lambda (key . args)
        (false-if-exception (delete-file template))))))
        (false-if-exception (delete-file template))
        (close-port out)))))

(define (cache-directory)
  "Return the cache directory for Guix, by default ~/.cache/guix."