X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=http-fetch.c;h=3cd6ef91af59fdb42a664cb8d9bdb5b591ecb789;hb=724b511d4fb363ebee828ba3992c831ba006444c;hp=435317342be0d31088f5aae5b337e090b40199b5;hpb=5e3a769186bc41f94c1970579f96f3b68b046ed6;p=git.git diff --git a/http-fetch.c b/http-fetch.c index 43531734..3cd6ef91 100644 --- a/http-fetch.c +++ b/http-fetch.c @@ -658,7 +658,7 @@ static int fetch_indices(struct alt_base *repo) switch (data[i]) { case 'P': i++; - if (i + 52 < buffer.posn && + if (i + 52 <= buffer.posn && !strncmp(data + i, " pack-", 6) && !strncmp(data + i + 46, ".pack\n", 6)) { get_sha1_hex(data + i + 6, sha1); @@ -667,7 +667,7 @@ static int fetch_indices(struct alt_base *repo) break; } default: - while (data[i] != '\n') + while (i < buffer.posn && data[i] != '\n') i++; } i++; @@ -922,6 +922,8 @@ int main(int argc, char **argv) int arg = 1; int rc = 0; + setup_git_directory(); + while (arg < argc && argv[arg][0] == '-') { if (argv[arg][1] == 't') { get_tree = 1;