config: use chmod() instead of fchmod()

There is no fchmod() on native Windows platforms (MinGW and MSVC), and the
equivalent Win32 API (SetFileInformationByHandle) requires Windows Vista.

Use chmod() instead.

Signed-off-by: Karsten Blees <blees@dcon.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Karsten Blees 2014-07-16 00:54:30 +02:00 committed by Junio C Hamano
parent daa22c6f8d
commit 2569d23915

View File

@ -1634,8 +1634,8 @@ int git_config_set_multivar_in_file(const char *config_filename,
MAP_PRIVATE, in_fd, 0);
close(in_fd);
if (fchmod(fd, st.st_mode & 07777) < 0) {
error("fchmod on %s failed: %s",
if (chmod(lock->filename, st.st_mode & 07777) < 0) {
error("chmod on %s failed: %s",
lock->filename, strerror(errno));
ret = CONFIG_NO_WRITE;
goto out_free;
@ -1813,8 +1813,8 @@ int git_config_rename_section_in_file(const char *config_filename,
fstat(fileno(config_file), &st);
if (fchmod(out_fd, st.st_mode & 07777) < 0) {
ret = error("fchmod on %s failed: %s",
if (chmod(lock->filename, st.st_mode & 07777) < 0) {
ret = error("chmod on %s failed: %s",
lock->filename, strerror(errno));
goto out;
}