summaryrefslogtreecommitdiff
path: root/repository.c
diff options
context:
space:
mode:
authorRené Scharfe <l.s.r@web.de>2017-10-01 14:44:46 (GMT)
committerJunio C Hamano <gitster@pobox.com>2017-10-02 04:15:59 (GMT)
commit90dd04aaeb9ddbdc26c5937a118db505c6a28394 (patch)
tree1e948a8692e54f52bf414d27675a8bfeb101d640 /repository.c
parentea220ee40cbb03a63ebad2be902057bf742492fd (diff)
downloadgit-90dd04aaeb9ddbdc26c5937a118db505c6a28394.zip
git-90dd04aaeb9ddbdc26c5937a118db505c6a28394.tar.gz
git-90dd04aaeb9ddbdc26c5937a118db505c6a28394.tar.bz2
repository: use FREE_AND_NULL
Use the macro FREE_AND_NULL to release allocated objects and clear their pointers. This is shorter and documents the intent better by combining the two related operations into one. Patch generated with Coccinelle and contrib/coccinelle/free.cocci. Signed-off-by: Rene Scharfe <l.s.r@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'repository.c')
-rw-r--r--repository.c27
1 files changed, 9 insertions, 18 deletions
diff --git a/repository.c b/repository.c
index 97c732b..bb2fae5 100644
--- a/repository.c
+++ b/repository.c
@@ -200,25 +200,17 @@ out:
void repo_clear(struct repository *repo)
{
- free(repo->gitdir);
- repo->gitdir = NULL;
- free(repo->commondir);
- repo->commondir = NULL;
- free(repo->objectdir);
- repo->objectdir = NULL;
- free(repo->graft_file);
- repo->graft_file = NULL;
- free(repo->index_file);
- repo->index_file = NULL;
- free(repo->worktree);
- repo->worktree = NULL;
- free(repo->submodule_prefix);
- repo->submodule_prefix = NULL;
+ FREE_AND_NULL(repo->gitdir);
+ FREE_AND_NULL(repo->commondir);
+ FREE_AND_NULL(repo->objectdir);
+ FREE_AND_NULL(repo->graft_file);
+ FREE_AND_NULL(repo->index_file);
+ FREE_AND_NULL(repo->worktree);
+ FREE_AND_NULL(repo->submodule_prefix);
if (repo->config) {
git_configset_clear(repo->config);
- free(repo->config);
- repo->config = NULL;
+ FREE_AND_NULL(repo->config);
}
if (repo->submodule_cache) {
@@ -228,8 +220,7 @@ void repo_clear(struct repository *repo)
if (repo->index) {
discard_index(repo->index);
- free(repo->index);
- repo->index = NULL;
+ FREE_AND_NULL(repo->index);
}
}