diff options
author | Shawn O. Pearce <spearce@spearce.org> | 2007-05-30 02:13:14 -0400 |
---|---|---|
committer | Junio C Hamano <junkio@cox.net> | 2007-05-29 23:31:06 -0700 |
commit | b77ffe8a57a0921f58cff22dcf1ed6ae64d89d6a (patch) | |
tree | 67d687cc3fdf5321caf2089eef702fb8e89e56aa /builtin-fsck.c | |
parent | eaa867703927c1f383637979d16c40d996cea240 (diff) | |
download | git-b77ffe8a57a0921f58cff22dcf1ed6ae64d89d6a.tar.gz git-b77ffe8a57a0921f58cff22dcf1ed6ae64d89d6a.tar.xz |
Ensure the pack index is opened before access
In this particular location of fsck the index should have already
been opened by verify_pack, which is called just before we get
here and loop through the object names. However, just in case a
future version of that function does not use the index file we'll
double-check its open before we access the num_objects field.
Better safe now than sorry later.
Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
Diffstat (limited to 'builtin-fsck.c')
-rw-r--r-- | builtin-fsck.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/builtin-fsck.c b/builtin-fsck.c index cbbcaf011..9959818ce 100644 --- a/builtin-fsck.c +++ b/builtin-fsck.c @@ -668,7 +668,10 @@ int cmd_fsck(int argc, char **argv, const char *prefix) verify_pack(p, 0); for (p = packed_git; p; p = p->next) { - uint32_t i, num = p->num_objects; + uint32_t i, num; + if (open_pack_index(p)) + continue; + num = p->num_objects; for (i = 0; i < num; i++) fsck_sha1(nth_packed_object_sha1(p, i)); } |