On Tue, Oct 31, 2017 at 10:54:21AM +0100, René Scharfe wrote:
> +static int rewrite_file(const char *path, const char *buf, size_t len)
> +{
> +     int rc = 0;
> +     int fd = open(path, O_WRONLY);
> +     if (fd < 0)
> +             return error_errno(_("could not open '%s' for writing"), path);
> +     if (write_in_full(fd, buf, len) < 0)
> +             rc = error_errno(_("could not write to '%s'"), path);
> +     if (!rc && ftruncate(fd, len) < 0)
> +             rc = error_errno(_("could not truncate '%s'"), path);
> +     close(fd);

We might want to check the return value of close() as some file
systems report write errors only on close. But I'm not sure how
the rest of Git's code-base handles this.

> +     return rc;
> +}

Regards
Simon
-- 
+ privacy is necessary
+ using gnupg http://gnupg.org
+ public key id: 0x92FEFDB7E44C32F9

Reply via email to