diff options
Diffstat (limited to 'guix-build-coordinator/utils.scm')
-rw-r--r-- | guix-build-coordinator/utils.scm | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/guix-build-coordinator/utils.scm b/guix-build-coordinator/utils.scm index 44a08c8..6e6ba2e 100644 --- a/guix-build-coordinator/utils.scm +++ b/guix-build-coordinator/utils.scm @@ -321,14 +321,16 @@ upcoming chunk." (set-port-encoding! chunked-output-port "ISO-8859-1") (callback chunked-output-port) (close-port chunked-output-port) - (display "\r\n" port) - (force-output port)) - - (let ((response (read-response port))) - (let ((body (read-response-body response))) - (close-port port) - (values response - body)))))))) + (with-gc-protection + (lambda () + (display "\r\n" port) + (force-output port) + + (let ((response (read-response port))) + (let ((body (read-response-body response))) + (close-port port) + (values response + body))))))))))) (define (find-missing-substitutes-for-output store substitute-urls output) (if (valid-path? store output) |