summary refs log tree commit diff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2015-01-21 19:31:10 +0100
committerLudovic Courtès <ludo@gnu.org>2015-01-21 23:18:57 +0100
commit3698f524d5d1777aebec653c444783800a70417a (patch)
treedb2aadd59a06174d486409a9680fc4df49200d08
parenta101c891e1164ecb30145c798f441c285ec139ad (diff)
downloadguix-3698f524d5d1777aebec653c444783800a70417a.tar.gz
store: Change 'run-with-store' to return a single value.
* guix/store.scm (run-with-store): Wrap 'run-with-state' in
  'call-with-values'.  Return only the first value.
-rw-r--r--guix/store.scm8
1 files changed, 6 insertions, 2 deletions
diff --git a/guix/store.scm b/guix/store.scm
index 63425b3023..a12abc8671 100644
--- a/guix/store.scm
+++ b/guix/store.scm
@@ -917,10 +917,14 @@ permission bits are kept."
                          (guile-for-build (%guile-for-build))
                          (system (%current-system)))
   "Run MVAL, a monadic value in the store monad, in STORE, an open store
-connection."
+connection, and return the result."
   (parameterize ((%guile-for-build guile-for-build)
                  (%current-system system))
-    (run-with-state mval store)))
+    (call-with-values (lambda ()
+                        (run-with-state mval store))
+      (lambda (result store)
+        ;; Discard the state.
+        result))))
 
 
 ;;;