From 95fa173ed12b832315d119d635b85813bb5317bd Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Sun, 19 Jun 2016 21:29:43 +0200 Subject: store: 'register-path' no longer swallows 'system-error' exceptions. * guix/store.scm (register-path): Do not catch 'system-error'. --- guix/store.scm | 31 +++++++++++++------------------ 1 file changed, 13 insertions(+), 18 deletions(-) (limited to 'guix') diff --git a/guix/store.scm b/guix/store.scm index a64016611d..276684e2fb 100644 --- a/guix/store.scm +++ b/guix/store.scm @@ -1061,24 +1061,19 @@ Return #t on success. Use with care as it directly modifies the store! This is primarily meant to be used internally by the daemon's build hook." ;; Currently this is implemented by calling out to the fine C++ blob. - (catch 'system-error - (lambda () - (let ((pipe (apply open-pipe* OPEN_WRITE %guix-register-program - `(,@(if prefix - `("--prefix" ,prefix) - '()) - ,@(if state-directory - `("--state-directory" ,state-directory) - '()))))) - (and pipe - (begin - (format pipe "~a~%~a~%~a~%" - path (or deriver "") (length references)) - (for-each (cut format pipe "~a~%" <>) references) - (zero? (close-pipe pipe)))))) - (lambda args - ;; Failed to run %GUIX-REGISTER-PROGRAM. - #f))) + (let ((pipe (apply open-pipe* OPEN_WRITE %guix-register-program + `(,@(if prefix + `("--prefix" ,prefix) + '()) + ,@(if state-directory + `("--state-directory" ,state-directory) + '()))))) + (and pipe + (begin + (format pipe "~a~%~a~%~a~%" + path (or deriver "") (length references)) + (for-each (cut format pipe "~a~%" <>) references) + (zero? (close-pipe pipe)))))) ;;; -- cgit v1.2.3