From 750c92ab8ac4b3458e63bee150c124c391248a8f Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Mon, 16 Oct 2023 12:02:47 +0100 Subject: Guard against using monitor inside fibers --- guix-qa-frontpage/git-repository.scm | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'guix-qa-frontpage/git-repository.scm') diff --git a/guix-qa-frontpage/git-repository.scm b/guix-qa-frontpage/git-repository.scm index dc8d7f2..a0b4eca 100644 --- a/guix-qa-frontpage/git-repository.scm +++ b/guix-qa-frontpage/git-repository.scm @@ -5,6 +5,7 @@ #:use-module (ice-9 rdelim) #:use-module (ice-9 threads) #:use-module (ice-9 exceptions) + #:use-module (fibers scheduler) #:use-module (git) #:use-module (git rev-parse) #:use-module (git object) @@ -28,11 +29,17 @@ (make-parameter #f)) (define* (guix.git-excursion thunk #:optional dir) + (when (current-scheduler) + (error "guix.git-excursion can't be used from fibers")) + (monitor (with-directory-excursion (or dir (%git-repository-location)) (thunk)))) (define (ensure-repository-exists!) + (when (current-scheduler) + (error "guix.git-excursion can't be used from fibers")) + (monitor (unless (file-exists? (%git-repository-location)) (invoke "git" "init" "--bare" -- cgit v1.2.3