return inserted;
}
-static int load_one_loose_object_map(struct repository *repo, struct odb_source_loose *loose)
+static int load_one_loose_object_map(struct odb_source_loose *loose)
{
- struct strbuf buf = STRBUF_INIT, path = STRBUF_INIT;
+ struct repository *repo = loose->base.odb->repo;
+ struct strbuf buf = STRBUF_INIT;
+ char *path;
FILE *fp;
int ret = -1;
insert_loose_map(loose, repo->hash_algo->empty_blob, repo->compat_hash_algo->empty_blob);
insert_loose_map(loose, repo->hash_algo->null_oid, repo->compat_hash_algo->null_oid);
- repo_common_path_replace(repo, &path, "objects/loose-object-idx");
- fp = fopen(path.buf, "rb");
+ path = xstrfmt("%s/loose-object-idx", loose->base.path);
+ fp = fopen(path, "rb");
if (!fp) {
- strbuf_release(&path);
+ free(path);
return 0;
}
err:
fclose(fp);
strbuf_release(&buf);
- strbuf_release(&path);
+ free(path);
return ret;
}
for (source = repo->objects->sources; source; source = source->next) {
struct odb_source_files *files = odb_source_files_downcast(source);
- if (load_one_loose_object_map(repo, files->loose) < 0) {
+ if (load_one_loose_object_map(files->loose) < 0)
return -1;
- }
}
+
return 0;
}