Get a buffer with the filtered content of a blob.
This applies filters as if the blob was being checked out to the working directory under the specified filename. This may apply CRLF filtering or other types of changes depending on the file attributes set for the blob and the content detected in it.
The output is written into a git_buf
which the caller must free
when done (via git_buf_free
).
If no filters need to be applied, then the out
buffer will just be
populated with a pointer to the raw content of the blob. In that case,
be careful to not free the blob until done with the buffer. To keep
the data detached from the blob, call git_buf_grow
on the buffer
with a want_size
of 0 and the buffer will be reallocated to be
detached from the blob.
Path used for file attribute lookups, etc.
Should this test if blob content contains NUL bytes / looks like binary data before applying filters?
0 on success or an error code