diff options
author | Jeff King <peff@peff.net> | 2016-02-22 17:44:57 -0500 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2016-02-22 14:51:09 -0800 |
commit | 7b35eaf8c50609ae4899dcde7fcaa1be0df657df (patch) | |
tree | c1d4be07465d212a6b14faf4d144bc9ce41c24cb /t | |
parent | test-path-utils: fix normalize_path_copy output buffer size (diff) | |
download | tgif-7b35eaf8c50609ae4899dcde7fcaa1be0df657df.tar.xz |
sequencer: simplify memory allocation of get_message
For a commit with sha1 "1234abcd" and subject "foo", this
function produces a struct with three strings:
1. "foo"
2. "1234abcd... foo"
3. "parent of 1234abcd... foo"
It takes advantage of the fact that these strings are
subsets of each other, and allocates only _one_ string, with
pointers into the various parts. Unfortunately, this makes
the string allocation complicated and hard to follow.
Since we keep only one of these in memory at a time, we can
afford to simply allocate three strings. This lets us build
on tools like xstrfmt and avoid manual computation.
While we're here, we can also drop the ad-hoc
reimplementation of get_git_commit_encoding(), and simply
call that function.
Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't')
0 files changed, 0 insertions, 0 deletions