diff options
author | Martin Ågren <martin.agren@gmail.com> | 2017-10-05 22:32:04 +0200 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2017-10-06 10:07:17 +0900 |
commit | 837e34eba47f209a38fc9ab458bd103fd7515325 (patch) | |
tree | ab91a9de784eec03c56b431b51dd4649270cfd9c /builtin/diff.c | |
parent | sha1_file: do not leak `lock_file` (diff) | |
download | tgif-837e34eba47f209a38fc9ab458bd103fd7515325.tar.xz |
treewide: prefer lockfiles on the stack
There is no longer any need to allocate and leak a `struct lock_file`.
The previous patch addressed an instance where we needed a minor tweak
alongside the trivial changes.
Deal with the remaining instances where we allocate and leak a struct
within a single function. Change them to have the `struct lock_file` on
the stack instead.
These instances were identified by running `git grep "^\s*struct
lock_file\s*\*"`.
Signed-off-by: Martin Ågren <martin.agren@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'builtin/diff.c')
-rw-r--r-- | builtin/diff.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/builtin/diff.c b/builtin/diff.c index 7e3ebcea38..91995965d7 100644 --- a/builtin/diff.c +++ b/builtin/diff.c @@ -203,17 +203,16 @@ static int builtin_diff_combined(struct rev_info *revs, static void refresh_index_quietly(void) { - struct lock_file *lock_file; + struct lock_file lock_file = LOCK_INIT; int fd; - lock_file = xcalloc(1, sizeof(struct lock_file)); - fd = hold_locked_index(lock_file, 0); + fd = hold_locked_index(&lock_file, 0); if (fd < 0) return; discard_cache(); read_cache(); refresh_cache(REFRESH_QUIET|REFRESH_UNMERGED); - update_index_if_able(&the_index, lock_file); + update_index_if_able(&the_index, &lock_file); } static int builtin_diff_files(struct rev_info *revs, int argc, const char **argv) |