Re: [PATCH 1/2] sequencer: factor out rewrite_file()
- From
Simon Ruderich <simon@ruderich.org>
- Date
- Nov 1, 2017, 11:10 UTC
- Message-ID
- <20171101110715.e4s7td2weisog4wt@ruderich.org>
- In-Reply-To
- <6150c80b-cb0e-06d4-63a7-a4f4a9107ab2@web.de>
On Tue, Oct 31, 2017 at 10:54:21AM +0100, René Scharfe wrote:
Show 11 quoted lines
> +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