diff options
author | Christopher Baines <mail@cbaines.net> | 2023-10-16 12:02:47 +0100 |
---|---|---|
committer | Christopher Baines <mail@cbaines.net> | 2023-10-16 12:02:47 +0100 |
commit | 750c92ab8ac4b3458e63bee150c124c391248a8f (patch) | |
tree | 2ee3e36acb1985033f6012d1be6500c67917b00a /guix-qa-frontpage/git-repository.scm | |
parent | 78b4a068e8f99a9f830f17c5b5d9a29d47c08ee3 (diff) | |
download | qa-frontpage-750c92ab8ac4b3458e63bee150c124c391248a8f.tar qa-frontpage-750c92ab8ac4b3458e63bee150c124c391248a8f.tar.gz |
Guard against using monitor inside fibers
Diffstat (limited to 'guix-qa-frontpage/git-repository.scm')
-rw-r--r-- | guix-qa-frontpage/git-repository.scm | 7 |
1 files changed, 7 insertions, 0 deletions
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" |