git_config_rename_section_in_file(): avoid resource leak
In case of errors, we really want the file descriptor to be closed. Discovered by a Coverity scan. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
5748693b91
commit
4db7dbdb4a
5
config.c
5
config.c
@ -2621,7 +2621,7 @@ int git_config_rename_section_in_file(const char *config_filename,
|
||||
struct lock_file *lock;
|
||||
int out_fd;
|
||||
char buf[1024];
|
||||
FILE *config_file;
|
||||
FILE *config_file = NULL;
|
||||
struct stat st;
|
||||
|
||||
if (new_name && !section_name_is_ok(new_name)) {
|
||||
@ -2703,11 +2703,14 @@ int git_config_rename_section_in_file(const char *config_filename,
|
||||
}
|
||||
}
|
||||
fclose(config_file);
|
||||
config_file = NULL;
|
||||
commit_and_out:
|
||||
if (commit_lock_file(lock) < 0)
|
||||
ret = error_errno("could not write config file %s",
|
||||
config_filename);
|
||||
out:
|
||||
if (config_file)
|
||||
fclose(config_file);
|
||||
rollback_lock_file(lock);
|
||||
out_no_rollback:
|
||||
free(filename_buf);
|
||||
|
Loading…
Reference in New Issue
Block a user