Improve exception handling for channel instance derivations

This commit is contained in:
Christopher Baines 2024-02-03 11:08:04 +01:00
parent ac1a4cb1e2
commit 26f517d9c2

View file

@ -1190,10 +1190,12 @@
(with-exception-handler (with-exception-handler
(lambda (exn) (lambda (exn)
(if (inferior-protocol-error? exn) (if (inferior-protocol-error? exn)
(begin
(simple-format (current-error-port) (simple-format (current-error-port)
"ignoring ~A for ~A\n" "ignoring ~A for ~A\n"
exn exn
system) system)
#f)
(raise-exception exn))) (raise-exception exn)))
(lambda () (lambda ()
(with-throw-handler #t (with-throw-handler #t
@ -1214,12 +1216,13 @@
(for-each (for-each
(match-lambda (match-lambda
((_ . manifest-and-profile) ((_ . manifest-and-profile)
(when manifest-and-profile
(and=> (assq-ref manifest-and-profile 'manifest-entry-item) (and=> (assq-ref manifest-and-profile 'manifest-entry-item)
(lambda (drv) (lambda (drv)
(add-temp-root store drv))) (add-temp-root store drv)))
(and=> (assq-ref manifest-and-profile 'profile) (and=> (assq-ref manifest-and-profile 'profile)
(lambda (drv) (lambda (drv)
(add-temp-root store drv))))) (add-temp-root store drv))))))
result) result)
;; Now the roots have been added to the main store connection, close the ;; Now the roots have been added to the main store connection, close the