diff options
author | Nguyễn Thái Ngọc Duy <pclouds@gmail.com> | 2013-02-13 16:13:17 +0700 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2013-02-13 07:42:05 -0800 |
commit | d90906a90265fa1df34a7f155fe41b1393679fc4 (patch) | |
tree | 7d745fed55a2316351504c7e649186fedfa67cdd /sha1_file.c | |
parent | 0bdaa12169bca5d69f2c58f96cc92d51280e9e26 (diff) | |
download | git-d90906a90265fa1df34a7f155fe41b1393679fc4.tar.gz |
sha1_file: reorder code in prepare_packed_git_one()
The current loop does
while (...) {
if (it is not an .idx file)
continue;
process .idx file;
}
and is reordered to
while (...) {
if (it is an .idx file) {
process .idx file;
}
}
This makes it easier to add new extension file processing.
Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'sha1_file.c')
-rw-r--r-- | sha1_file.c | 30 |
1 files changed, 14 insertions, 16 deletions
diff --git a/sha1_file.c b/sha1_file.c index 40b23297b2..239bee7846 100644 --- a/sha1_file.c +++ b/sha1_file.c @@ -1024,27 +1024,25 @@ static void prepare_packed_git_one(char *objdir, int local) int namelen = strlen(de->d_name); struct packed_git *p; - if (!has_extension(de->d_name, ".idx")) - continue; - if (len + namelen + 1 > sizeof(path)) continue; - /* Don't reopen a pack we already have. */ strcpy(path + len, de->d_name); - for (p = packed_git; p; p = p->next) { - if (!memcmp(path, p->pack_name, len + namelen - 4)) - break; + + if (has_extension(de->d_name, ".idx")) { + /* Don't reopen a pack we already have. */ + for (p = packed_git; p; p = p->next) { + if (!memcmp(path, p->pack_name, len + namelen - 4)) + break; + } + if (p == NULL && + /* + * See if it really is a valid .idx file with + * corresponding .pack file that we can map. + */ + (p = add_packed_git(path, len + namelen, local)) != NULL) + install_packed_git(p); } - if (p) - continue; - /* See if it really is a valid .idx file with corresponding - * .pack file that we can map. - */ - p = add_packed_git(path, len + namelen, local); - if (!p) - continue; - install_packed_git(p); } closedir(dir); } |