config: free the file buffer earlier There is no need to keep config file in memory until the the configuration is freed. Free the buffer immediately after the configuration has been parsed. Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
diff --git a/src/config.c b/src/config.c
index e164dc2..0704f07 100644
--- a/src/config.c
+++ b/src/config.c
@@ -200,6 +200,8 @@ int git_config_open(git_config **cfg_out, const char *path)
else
*cfg_out = cfg;
+ gitfo_free_buf(&cfg->reader.buffer);
+
return error;
cleanup:
@@ -220,7 +222,6 @@ void git_config_free(git_config *cfg)
free(cfg->file_path);
cvar_list_free(cfg->vars);
- gitfo_free_buf(&cfg->reader.buffer);
free(cfg);
}