diff options
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" |