(zilch magic): re-raise the first CA error

Change-Id: I6a6a6964a748b10ec12aa5cbc1cd736bffe077ff
This commit is contained in:
puck 2025-05-11 22:21:07 +00:00
parent c94279fcb2
commit 83c6d94de3

View file

@ -339,6 +339,7 @@
(define pending-mutex (make-mutex))
(define pending-count 0)
(define build-error #f)
(define build-mutex (make-mutex))
(define build-condvar (make-condition-variable))
(define to-build '())
@ -450,6 +451,7 @@
(lambda (e)
(mutex-lock! pending-mutex)
(set! pending-count 'error)
(set! build-error e)
(mutex-unlock! pending-mutex)
(condition-variable-broadcast! build-condvar)
(when (error-object? e)
@ -487,7 +489,9 @@
(for-each (lambda (t) (thread-join! t)) builder-threads)
(when (eq? pending-count 'error)
(error "CA build failed"))
(if build-error
(raise build-error)
(error "CA build failed")))
root-pend)
(define (drv-resolve-ca drv outputs)
(if (drv-is-ca drv)