From: Junio C Hamano Date: Mon, 21 Dec 2015 16:59:56 GMT Subject: Re: [PATCH v2] mingw: emulate write(2) that fails with a EPIPE Message-ID: In-Reply-To: <5674732A.3050104@kdbg.org> Johannes Sixt writes: >> +#undef write >> +ssize_t mingw_write(int fd, const void *buf, size_t len) >> +{ >> + ssize_t result = write(fd, buf, len); >> + >> + if (result < 0 && errno == EINVAL && buf) { >> + /* check if fd is a pipe */ >> + HANDLE h = (HANDLE) _get_osfhandle(fd); >> + if (GetFileType(h) == FILE_TYPE_PIPE) >> + errno = EPIPE; >> + else >> + errno = EINVAL; >> + } >> + >> + return result; >> +} >> + >> int mingw_access(const char *filename, int mode) >> { >> wchar_t wfilename[MAX_PATH]; > > Looks good. I tested the patch, and it fixes the failure exposed by > t5571.11. > > Acked-by: Johannes Sixt > > Thanks! Thanks, both.