Merge branch 'jh/resize-convert-scratch-buffer'

When the "clean" filter can reduce the size of a huge file in the
working tree down to a small "token" (a la Git LFS), there is no
point in allocating a huge scratch area upfront, but the buffer is
sized based on the original file size.  The convert mechanism now
allocates very minimum and reallocates as it receives the output
from the clean filter process.

* jh/resize-convert-scratch-buffer:
  convert: avoid malloc of original file size
This commit is contained in:
Junio C Hamano 2019-04-10 02:14:22 +09:00
Родитель b582c1681e 02156ab031
Коммит 1828e52efc
1 изменённых файлов: 1 добавлений и 1 удалений

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

@ -731,7 +731,7 @@ static int apply_single_file_filter(const char *path, const char *src, size_t le
if (start_async(&async)) if (start_async(&async))
return 0; /* error was already reported */ return 0; /* error was already reported */
if (strbuf_read(&nbuf, async.out, len) < 0) { if (strbuf_read(&nbuf, async.out, 0) < 0) {
err = error(_("read from external filter '%s' failed"), cmd); err = error(_("read from external filter '%s' failed"), cmd);
} }
if (close(async.out)) { if (close(async.out)) {