Andrew's git
/
gitweb.git
/ blobdiff
summary
|
log
|
commit
|
diff
|
tree
commit
grep
author
committer
pickaxe
?
re
builtin-fsck: reports missing parent commits
[gitweb.git]
/
sha1_file.c
diff --git
a/sha1_file.c
b/sha1_file.c
index 66a4e00fa83fd9fc853a1ba8a308b05cdc030967..0ca7f0dbc6eda54e43240a45f2cff4cf70659fbd 100644
(file)
--- a/
sha1_file.c
+++ b/
sha1_file.c
@@
-1943,7
+1943,8
@@
void *read_object_with_reference(const unsigned char *sha1,
}
ref_length = strlen(ref_type);
- if (memcmp(buffer, ref_type, ref_length) ||
+ if (ref_length + 40 > isize ||
+ memcmp(buffer, ref_type, ref_length) ||
get_sha1_hex((char *) buffer + ref_length, actual_sha1)) {
free(buffer);
return NULL;