diff options
| author | Mattias Andrée <maandree@kth.se> | 2017-05-31 21:06:25 +0200 |
|---|---|---|
| committer | Mattias Andrée <maandree@kth.se> | 2017-05-31 21:06:25 +0200 |
| commit | 91eae00bfa6abfb4b50833768d54ac48678c88f6 (patch) | |
| tree | b194a0aecbea40c80bba925907d5e659817bc462 /src/stream.c | |
| parent | Add blind-tee (diff) | |
| download | blind-91eae00bfa6abfb4b50833768d54ac48678c88f6.tar.gz blind-91eae00bfa6abfb4b50833768d54ac48678c88f6.tar.bz2 blind-91eae00bfa6abfb4b50833768d54ac48678c88f6.tar.xz | |
blind-stack: add -s
Signed-off-by: Mattias Andrée <maandree@kth.se>
Diffstat (limited to '')
| -rw-r--r-- | src/stream.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/stream.c b/src/stream.c index 30bce25..1f361a4 100644 --- a/src/stream.c +++ b/src/stream.c @@ -398,7 +398,7 @@ nprocess_two_streams(int status, struct stream *left, struct stream *right, int void nprocess_multiple_streams(int status, struct stream *streams, size_t n_streams, int output_fd, const char* output_fname, - void (*process)(struct stream *streams, size_t n_streams, size_t n)) + int shortest, void (*process)(struct stream *streams, size_t n_streams, size_t n)) { size_t closed, i, j, n; @@ -411,6 +411,8 @@ nprocess_multiple_streams(int status, struct stream *streams, size_t n_streams, if (streams[i].ptr < sizeof(streams->buf) && !enread_stream(status, streams + i, SIZE_MAX)) { close(streams[i].fd); streams[i].fd = -1; + if (shortest) + return; } if (streams[i].ptr && streams[i].ptr < n) n = streams[i].ptr; |
