Commit a5f43b95364e76436df25349f5f7b07e532e8e23

Carlos Martín Nieto 2011-05-31T13:48:44

Config file open: don't free memory that doesn't belong to us On error, it would free the configuration object even though it didn't own that memory, which would cause a double-free. This fixes the first part of Issue #210 Signed-off-by: Carlos Martín Nieto <cmn@elego.de>

1
2
3
4
5
6
7
8
9
10
11
12
diff --git a/src/config_file.c b/src/config_file.c
index ace7cc8..216c074 100644
--- a/src/config_file.c
+++ b/src/config_file.c
@@ -261,7 +261,6 @@ static int config_open(git_config_file *cfg)
  cleanup:
 	cvar_list_free(&b->var_list);
 	gitfo_free_buf(&b->reader.buffer);
-	free(cfg);
 
 	return git__rethrow(error, "Failed to open config");
 }