On Monday, June 9, 2014, Jeff King <p...@peff.net> wrote:
> Many sites look at commit->buffer to get more detailed
> information than what is in the parsed commit struct.
> However, we sometimes drop commit->buffer to save memory,
> in which case the caller would need to read the object
> afresh. Some callers do this (leading to duplicated code),
> and others do not (which opens the possibility of a segfault
> if somebody else frees the buffer).
>
> Let's provide a pair of helpers, "get" and "unuse", that let
> callers easily get the buffer. They will use the cached
> buffer when possible, and otherwise load from disk using
> read_sha1_file.
>
> Note that we also need to add a "get_cached" variant which
> returns NULL when we do not have a cached buffer. At first
> glance this seems to defeat the purpose of "get", which is
> to always provide a return value. However, some log code
> paths actually use the NULL-ness of commit->buffer as a
> boolean flag to decide whether to try to printing the

s/printing/print/ ... or some other variation of the phrase.

> commit. At least for now, we want to continue supporting
> that use.
>
> Signed-off-by: Jeff King <p...@peff.net>
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to