diff options
author | Junio C Hamano <gitster@pobox.com> | 2011-12-13 22:02:51 -0800 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2011-12-13 22:02:51 -0800 |
commit | df6246ed78d040f06f095dd62d8db07a0aa19a96 (patch) | |
tree | cf9da0c48aa9450471d5c09a659cc99a1d3e1159 /sha1_file.c | |
parent | 8311158c66e0d83df950ea837fb1cb332c51f798 (diff) | |
parent | ea4f9685cb432caf357ad8af56a91877b6d04663 (diff) | |
download | git-df6246ed78d040f06f095dd62d8db07a0aa19a96.tar.gz |
Merge branch 'nd/misc-cleanups' into maint
* nd/misc-cleanups:
unpack_object_header_buffer(): clear the size field upon error
tree_entry_interesting: make use of local pointer "item"
tree_entry_interesting(): give meaningful names to return values
read_directory_recursive: reduce one indentation level
get_tree_entry(): do not call find_tree_entry() on an empty tree
tree-walk.c: do not leak internal structure in tree_entry_len()
Diffstat (limited to 'sha1_file.c')
-rw-r--r-- | sha1_file.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/sha1_file.c b/sha1_file.c index 6dcae3882b..956422ba4a 100644 --- a/sha1_file.c +++ b/sha1_file.c @@ -1267,7 +1267,8 @@ unsigned long unpack_object_header_buffer(const unsigned char *buf, while (c & 0x80) { if (len <= used || bitsizeof(long) <= shift) { error("bad object header"); - return 0; + size = used = 0; + break; } c = buf[used++]; size += (c & 0x7f) << shift; |