Commit 956ad0ed6f6a4d0008f00d573972f8f7fa654811

Carlos Martín Nieto 2011-04-06T15:51:10

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>

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
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);
 }