aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2017-03-08 23:10:09 +0100
committerLudovic Courtès <ludo@gnu.org>2017-03-08 23:42:53 +0100
commitac9c1dc7bdf1a016fcd1989993999e4a32d0c885 (patch)
tree938ea523926842e0f469d5fa23f98724945809da
parent1062063a65036f32a061c54866d33ffe079ec44e (diff)
downloadguix-ac9c1dc7bdf1a016fcd1989993999e4a32d0c885.tar
guix-ac9c1dc7bdf1a016fcd1989993999e4a32d0c885.tar.gz
list-runtime-roots: Bufferize the lsof pipe.
* nix/scripts/list-runtime-roots.in (lsof-roots): Add 'setvbuf' call for PIPE.
-rw-r--r--nix/scripts/list-runtime-roots.in5
1 files changed, 4 insertions, 1 deletions
diff --git a/nix/scripts/list-runtime-roots.in b/nix/scripts/list-runtime-roots.in
index 993eb169c1..a6938087b5 100644
--- a/nix/scripts/list-runtime-roots.in
+++ b/nix/scripts/list-runtime-roots.in
@@ -1,7 +1,7 @@
#!@GUILE@ -ds
!#
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012, 2013, 2014 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2012, 2013, 2014, 2017 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -133,6 +133,9 @@ or the empty list."
(define %file-rx
(make-regexp "^n/(.*)$"))
+ ;; We're going to read it all.
+ (setvbuf pipe _IOFBF 16384)
+
(let loop ((line (read-line pipe))
(roots '()))
(cond ((eof-object? line)