mirror of
https://github.com/git/git.git
synced 2024-11-23 18:05:29 +08:00
open_istream(): do not dereference NULL in the error case
When stream-filter cannot be attached, it is expected to return NULL, and we should close the stream we opened and signal an error by returning NULL ourselves from this function. However, we attempted to dereference that NULL pointer between the point we detected the error and returned from the function. Brought-to-attention-by: John Keeping <john@keeping.me.uk> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
d954828d45
commit
78368f2c1a
@ -152,8 +152,10 @@ struct git_istream *open_istream(const unsigned char *sha1,
|
||||
if (filter) {
|
||||
/* Add "&& !is_null_stream_filter(filter)" for performance */
|
||||
struct git_istream *nst = attach_stream_filter(st, filter);
|
||||
if (!nst)
|
||||
if (!nst) {
|
||||
close_istream(st);
|
||||
return NULL;
|
||||
}
|
||||
st = nst;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user