X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=archive-tar.c;h=e1bced56093dc08bbc260736637af3356b8598bb;hb=28391a80a94d2b59d1d21f8264fe5dab91d77249;hp=a87bc4b83eaff9a5cf3a329eada73ff7c9e557d8;hpb=39bd2eb56af89d43a08ba54699d9a1849ab57b39;p=git.git diff --git a/archive-tar.c b/archive-tar.c index a87bc4b83..e1bced560 100644 --- a/archive-tar.c +++ b/archive-tar.c @@ -238,15 +238,14 @@ static int write_tar_entry(const unsigned char *sha1, const char *filename, unsigned mode, int stage) { static struct strbuf path = STRBUF_INIT; - int filenamelen = strlen(filename); void *buffer; enum object_type type; unsigned long size; - strbuf_grow(&path, MAX(PATH_MAX, baselen + filenamelen + 1)); strbuf_reset(&path); + strbuf_grow(&path, PATH_MAX); strbuf_add(&path, base, baselen); - strbuf_add(&path, filename, filenamelen); + strbuf_addstr(&path, filename); if (S_ISDIR(mode) || S_ISGITLINK(mode)) { strbuf_addch(&path, '/'); buffer = NULL;