Commit 4d4befac3365dc2161a8164ea4c07c4ef48942ef

Edward Thomson 2020-08-05T10:07:23

pack: check pack_window_open return

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
diff --git a/src/pack.c b/src/pack.c
index d9e8bf2..71d321a 100644
--- a/src/pack.c
+++ b/src/pack.c
@@ -844,7 +844,10 @@ static int packfile_unpack_compressed(
 		unsigned int window_len;
 		unsigned char *in;
 
-		in = pack_window_open(p, mwindow, *position, &window_len);
+		if ((in = pack_window_open(p, mwindow, *position, &window_len)) == NULL) {
+			error = -1;
+			goto out;
+		}
 
 		if ((error = git_zstream_set_input(&zstream, in, window_len)) < 0 ||
 		    (error = git_zstream_get_output_chunk(data + total, &bytes, &zstream)) < 0) {