diff options
author | Ludovic Courtès <ludo@gnu.org> | 2017-01-16 21:59:00 +0100 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2017-01-16 22:13:21 +0100 |
commit | 90ad5c8836138b7fd4d1bd0243dfa8b30ae0cf21 (patch) | |
tree | a9471f3cb796528cde0694a35c5c3518289a6293 | |
parent | b09903619f82c1561612602307c1ffe426ca74fd (diff) |
grafts: Actually cache grafts during the derivation DAG traversal.
This fixes a regression introduced in
d38bc9a9f6feefc465964531520fee5663a12f48 whereby the cache was
effectively disabled.
Reported by Thomas Danckaert <thomas.danckaert@gmail.com>.
* guix/grafts.scm (with-cache): In the cache miss case, wrap body in
'mbegin'.
-rw-r--r-- | guix/grafts.scm | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/guix/grafts.scm b/guix/grafts.scm index 2006d3908e..b60c8cfd90 100644 --- a/guix/grafts.scm +++ b/guix/grafts.scm @@ -222,8 +222,9 @@ available." (return result)) (#f ;cache miss (mlet %state-monad ((result (begin exp ...))) - (set-current-state (vhash-consq key result cache)) - (return result)))))) + (mbegin %state-monad + (set-current-state (vhash-consq key result cache)) + (return result))))))) (define* (cumulative-grafts store drv grafts references |