Browse Source

read_istream_filtered: propagate read error from upstream

The filter istream pulls data from an "upstream" stream,
running it through a filter function. However, we did not
properly notice when the upstream filter yielded an error,
and just returned what we had read. Instead, we should
propagate the error.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
maint
Jeff King 12 years ago committed by Junio C Hamano
parent
commit
42e7e2a534
  1. 2
      streaming.c

2
streaming.c

@ -237,7 +237,7 @@ static read_method_decl(filtered)
if (!fs->input_finished) { if (!fs->input_finished) {
fs->i_end = read_istream(fs->upstream, fs->ibuf, FILTER_BUFFER); fs->i_end = read_istream(fs->upstream, fs->ibuf, FILTER_BUFFER);
if (fs->i_end < 0) if (fs->i_end < 0)
break; return -1;
if (fs->i_end) if (fs->i_end)
continue; continue;
} }

Loading…
Cancel
Save