aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLeo Famulari <leo@famulari.name>2018-07-11 20:24:29 -0400
committerLeo Famulari <leo@famulari.name>2018-07-13 17:33:45 -0400
commit27f7cbc91d1963118e44b14d04fcc669c9618176 (patch)
tree7c5ddadad4f8c0d2e61e1d65a7846221e4457c39
parent92bcccc51fd52571fb62166e787109a07185e329 (diff)
downloadguix-27f7cbc91d1963118e44b14d04fcc669c9618176.tar
guix-27f7cbc91d1963118e44b14d04fcc669c9618176.tar.gz
utils: Really clean up temporary directories.
Fixes <https://bugs.gnu.org/32126>. * guix/utils.scm (call-with-temporary-directory): Use DELETE-FILE-RECURSIVELY instead of RMDIR.
-rw-r--r--guix/utils.scm5
1 files changed, 3 insertions, 2 deletions
diff --git a/guix/utils.scm b/guix/utils.scm
index f934b6ed13..200bb69e03 100644
--- a/guix/utils.scm
+++ b/guix/utils.scm
@@ -33,10 +33,11 @@
#:use-module (srfi srfi-35)
#:use-module (srfi srfi-39)
#:use-module (ice-9 binary-ports)
+ #:use-module (ice-9 ftw)
#:autoload (rnrs io ports) (make-custom-binary-input-port)
#:use-module ((rnrs bytevectors) #:select (bytevector-u8-set!))
#:use-module (guix memoization)
- #:use-module ((guix build utils) #:select (dump-port mkdir-p))
+ #:use-module ((guix build utils) #:select (dump-port mkdir-p delete-file-recursively))
#:use-module ((guix build syscalls) #:select (mkdtemp! fdatasync))
#:use-module (ice-9 format)
#:autoload (ice-9 popen) (open-pipe*)
@@ -631,7 +632,7 @@ delete it when leaving the dynamic extent of this call."
(lambda ()
(proc tmp-dir))
(lambda ()
- (false-if-exception (rmdir tmp-dir))))))
+ (false-if-exception (delete-file-recursively tmp-dir))))))
(define (with-atomic-file-output file proc)
"Call PROC with an output port for the file that is going to replace FILE.