civodul pushed a commit to branch master
in repository guix.
commit 836297eae5ebe5fd0d434056db64770acc3f3275
Author: Ludovic Courtès <[email protected]>
AuthorDate: Mon Mar 27 12:01:05 2023 +0200
syscalls: 'getxattr' throws upon error.
* guix/build/syscalls.scm (getxattr): Throw in the negative SIZE case.
---
guix/build/syscalls.scm | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/guix/build/syscalls.scm b/guix/build/syscalls.scm
index df9b9f6ac7..d947b010d3 100644
--- a/guix/build/syscalls.scm
+++ b/guix/build/syscalls.scm
@@ -970,7 +970,10 @@ backend device."
(string->pointer key)
(string->pointer "")
0)))
- (cond ((< size 0) #f)
+ (cond ((< size 0)
+ (throw 'system-error "getxattr" "~S: ~A"
+ (list file key (strerror err))
+ (list err)))
((zero? size) "")
;; Get VALUE in buffer of SIZE. XXX actual size can race.
(else (let*-values (((buf) (make-bytevector size))