[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
02/02: nar: 'with-temporary-store-file' uses a single connection
From: |
guix-commits |
Subject: |
02/02: nar: 'with-temporary-store-file' uses a single connection |
Date: |
Thu, 7 May 2020 06:56:12 -0400 (EDT) |
reepca pushed a commit to branch master
in repository guix.
commit b338c41c824c57d9de506404717ea7b3d2887f45
Author: Caleb Ristvedt <address@hidden>
AuthorDate: Wed May 6 11:52:16 2020 -0500
nar: 'with-temporary-store-file' uses a single connection
Previously the 'with-store' form was entered every time a different
temporary
file was tried. This caused there to be as many simultaneous open
connections
as there were attempts, and prevented the (loop ...) call from being a tail
call. This change fixes that.
* guix/nar.scm (with-temporary-store-file): open connection once prior to
entering the loop.
---
guix/nar.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/guix/nar.scm b/guix/nar.scm
index 0a6f59b..eff4bec 100644
--- a/guix/nar.scm
+++ b/guix/nar.scm
@@ -138,8 +138,8 @@ held."
(define-syntax-rule (with-temporary-store-file name body ...)
"Evaluate BODY with NAME bound to the file name of a temporary store item
protected from GC."
- (let loop ((name (temporary-store-file)))
- (with-store store
+ (with-store store
+ (let loop ((name (temporary-store-file)))
;; Add NAME to the current process' roots. (Opening this connection to
;; the daemon allows us to reuse its code that deals with the
;; per-process roots file.)