From 90ad5c8836138b7fd4d1bd0243dfa8b30ae0cf21 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 16 Jan 2017 21:59:00 +0100 Subject: [PATCH] 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 . * guix/grafts.scm (with-cache): In the cache miss case, wrap body in 'mbegin'. --- guix/grafts.scm | 5 +++-- 1 file 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