sha1_file: allow sha1_file_name to handle arbitrary repositories

Signed-off-by: Stefan Beller <sbeller@google.com>
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Stefan Beller 2018-03-23 18:21:16 +01:00 коммит произвёл Junio C Hamano
Родитель e977fc7469
Коммит a68377b5de
2 изменённых файлов: 3 добавлений и 4 удалений

Просмотреть файл

@ -125,8 +125,7 @@ void raw_object_store_clear(struct raw_object_store *o);
* Put in `buf` the name of the file in the local object database that
* would be used to store a loose object with the specified sha1.
*/
#define sha1_file_name(r, b, s) sha1_file_name_##r(b, s)
void sha1_file_name_the_repository(struct strbuf *buf, const unsigned char *sha1);
void sha1_file_name(struct repository *r, struct strbuf *buf, const unsigned char *sha1);
#define map_sha1_file(r, s, sz) map_sha1_file_##r(s, sz)
void *map_sha1_file_the_repository(const unsigned char *sha1, unsigned long *size);

Просмотреть файл

@ -323,9 +323,9 @@ static void fill_sha1_path(struct strbuf *buf, const unsigned char *sha1)
}
}
void sha1_file_name_the_repository(struct strbuf *buf, const unsigned char *sha1)
void sha1_file_name(struct repository *r, struct strbuf *buf, const unsigned char *sha1)
{
strbuf_addstr(buf, get_object_directory());
strbuf_addstr(buf, r->objects->objectdir);
strbuf_addch(buf, '/');
fill_sha1_path(buf, sha1);
}