diff options
author | Berthold Stoeger <bstoeger@mail.tuwien.ac.at> | 2020-04-04 12:22:50 +0200 |
---|---|---|
committer | Dirk Hohndel <dirk@hohndel.org> | 2020-04-04 10:13:14 -0700 |
commit | d5e6a6594479b50a8d0f0d400e0c2dd3b8247db4 (patch) | |
tree | 9545731770184f2d0ac897c7429bc63288d6e5d5 /core | |
parent | 8c63d4e2bddbd5e5b1c4b58c254151675dcd4ca5 (diff) | |
download | subsurface-d5e6a6594479b50a8d0f0d400e0c2dd3b8247db4.tar.gz |
cleanup: copy saved_git_id, don't use local buffer
In an attempt to reduce the number of global variables, don't use
a local buffer to store the currently loaded git-id. The git-id
itself is still a global variable, which in the future can hopefully
be encapsulated in a "struct File" or similar.
Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
Diffstat (limited to 'core')
-rw-r--r-- | core/load-git.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/core/load-git.c b/core/load-git.c index f01fe72a0..cc6f42ce3 100644 --- a/core/load-git.c +++ b/core/load-git.c @@ -1677,15 +1677,17 @@ static int load_dives_from_tree(git_repository *repo, git_tree *tree, struct git void clear_git_id(void) { + free((void *)saved_git_id); saved_git_id = NULL; } void set_git_id(const struct git_oid *id) { - static char git_id_buffer[GIT_OID_HEXSZ + 1]; + char git_id_buffer[GIT_OID_HEXSZ + 1]; git_oid_tostr(git_id_buffer, sizeof(git_id_buffer), id); - saved_git_id = git_id_buffer; + free((void *)saved_git_id); + saved_git_id = strdup(git_id_buffer); } static int find_commit(git_repository *repo, const char *branch, git_commit **commit_p) |