This might be the last batch of line_buffer patches for the moment[1]. It introduces wrappers around strbuf_fread, fgetc, fdopen, and tmpfile so the line_buffer lib can do what those functions do. The motivation in the background is delta application. We need: - binary-safe input, since svn (like most version control systems) gets used to store binary files from time to time. - character-oriented input (fgetc) as a basic convenience, needed in particular for reading variable-length integers in svndiff blocks. - input from file descriptors, to read information requested from fast-import (in particular, delta preimages). - temporary files, to store the result of delta application and retrieve its length so svn-fe can write data <length> ... delta application result ... to fast-import. The ideas behind the third and fourth patches (patches 11 and 12) are from David Barr's earlier work in the same direction. Patches are based against [PATCH 8/8] t0081 (line-buffer): add buffering tests so we can reuse some of the testing infrastructure. They are numbered accordingly for easy application. Each patch introduces new API. I would be happy if you can find an infelicity or two so we can fix the functions now before people get used to them. Jonathan Nieder (4): vcs-svn: add binary-safe read function vcs-svn: allow character-oriented input vcs-svn: allow input from file descriptor vcs-svn: teach line_buffer about temporary files t/t0081-line-buffer.sh | 27 +++++++++++++++++++++++++++ test-line-buffer.c | 21 ++++++++++++++++++--- vcs-svn/line_buffer.c | 43 +++++++++++++++++++++++++++++++++++++++++++ vcs-svn/line_buffer.h | 10 +++++++++- vcs-svn/line_buffer.txt | 31 +++++++++++++++++++++++++++---- 5 files changed, 124 insertions(+), 8 deletions(-) [1] There's another patch to use 64-bit offsets but the API changes are more obvious. -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html