提交 3f835949 编写于 作者: J Junio C Hamano

Merge branch 'tr/merge-recursive-flush' into maint-1.7.11

* tr/merge-recursive-flush:
  merge-recursive: eliminate flush_buffer() in favor of write_in_full()
......@@ -614,23 +614,6 @@ static char *unique_path(struct merge_options *o, const char *path, const char *
return newpath;
}
static void flush_buffer(int fd, const char *buf, unsigned long size)
{
while (size > 0) {
long ret = write_in_full(fd, buf, size);
if (ret < 0) {
/* Ignore epipe */
if (errno == EPIPE)
break;
die_errno("merge-recursive");
} else if (!ret) {
die("merge-recursive: disk full?");
}
size -= ret;
buf += ret;
}
}
static int dir_in_way(const char *path, int check_working_copy)
{
int pos, pathlen = strlen(path);
......@@ -789,7 +772,7 @@ static void update_file_flags(struct merge_options *o,
fd = open(path, O_WRONLY | O_TRUNC | O_CREAT, mode);
if (fd < 0)
die_errno("failed to open '%s'", path);
flush_buffer(fd, buf, size);
write_in_full(fd, buf, size);
close(fd);
} else if (S_ISLNK(mode)) {
char *lnk = xmemdupz(buf, size);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册