[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Gnulib's freopen replacement and MinGW
From: |
Eli Zaretskii |
Subject: |
Re: Gnulib's freopen replacement and MinGW |
Date: |
Sat, 05 May 2012 19:57:16 +0300 |
> From: Bruno Haible <address@hidden>
> Cc: address@hidden
> Date: Sat, 05 May 2012 16:26:55 +0200
>
> > Diffutils 3.2 call xfreopen with its first argument NULL, expecting
> > the underlying reopen to handle this. However, the MS runtime does
> > not implement the Posix semantics of such a call, and so, for example,
> > MinGW-compiled cmp fails when invoked to compare its stdin with a
> > file:
> >
> > D:\gnu\diffutils-3.2\src>cat cmp.c | cmp cmp.c -
> > cmp: failed to reopen `stdin' with mode `rb': No such file or directory
> >
> > The following change fixes this:
> >
> > 2012-05-05 Eli Zaretskii <address@hidden>
> >
> > * lib/freopen.c [_WIN32]: Include io.h and fcntl.h.
> > (rpl_freopen) [_WIN32]: If the first argument is NULL, call
> > _setmode to switch STREAM to either binary or text mode, as
> > specified by MODE.
>
> Thanks for the proposed patch, but the problem has already been fixed
> differently, by avoiding to use xfreopen() [1].
Thanks, that's good to know.