[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#57850] [PATCH 2/2] marionette: Avoid read error when wait-for-file
From: |
Christopher Baines |
Subject: |
[bug#57850] [PATCH 2/2] marionette: Avoid read error when wait-for-file file is empty. |
Date: |
Fri, 16 Sep 2022 09:32:36 +0200 |
Since #<eof> can't be read.
* gnu/build/marionette.scm (wait-for-file): Return "" if file is empty.
---
gnu/build/marionette.scm | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/gnu/build/marionette.scm b/gnu/build/marionette.scm
index fd59a4c72f..5ebf783892 100644
--- a/gnu/build/marionette.scm
+++ b/gnu/build/marionette.scm
@@ -198,7 +198,14 @@ (define* (wait-for-file file marionette
(match (marionette-eval
`(let loop ((i ,timeout))
(cond ((file-exists? ,file)
- (cons 'success (call-with-input-file ,file ,read)))
+ (cons 'success
+ (let ((content
+ (call-with-input-file ,file ,read)))
+ (if (eof-object? content)
+ ;; #<eof> can't be read, so convert to the
+ ;; empty string
+ ""
+ content))))
((> i 0)
(sleep 1)
(loop (- i 1)))
--
2.37.3