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>
Nguyễn Thái Ngọc Duy committed
Feb 13, 2013 at 16:13 UTC
d90906a90265fa1df34a7f155fe41b1393679fc4
1 file changed
+14
-16
sha1_file.c
+14
-16
@@ -1024,27 +1024,25 @@ static void prepare_packed_git_one(char *objdir, int local)
1024
int namelen = strlen(de->d_name);
1025
struct packed_git *p;
1026
1027
- if (!has_extension(de->d_name, ".idx"))
1028
- continue;
1029
-
1027
if (len + namelen + 1 > sizeof(path))
1028
continue;
1029
1033
- /* Don't reopen a pack we already have. */
1030
strcpy(path + len, de->d_name);
1035
- for (p = packed_git; p; p = p->next) {
1036
- if (!memcmp(path, p->pack_name, len + namelen - 4))
1037
- break;
1031
+
1032
+ if (has_extension(de->d_name, ".idx")) {
1033
+ /* Don't reopen a pack we already have. */
1034
+ for (p = packed_git; p; p = p->next) {
1035
+ if (!memcmp(path, p->pack_name, len + namelen - 4))
1036
+ break;
1037
+ }
1038
+ if (p == NULL &&
1039
+ /*
1040
+ * See if it really is a valid .idx file with
1041
+ * corresponding .pack file that we can map.
1042
+ */
1043
+ (p = add_packed_git(path, len + namelen, local)) != NULL)
1044
+ install_packed_git(p);
1045
}
1039
- if (p)
1040
- continue;
1041
- /* See if it really is a valid .idx file with corresponding
1042
- * .pack file that we can map.
1043
- */
1044
- p = add_packed_git(path, len + namelen, local);
1045
- if (!p)
1046
- continue;
1047
- install_packed_git(p);
1046
}
1047
closedir(dir);
1048
}