This is the mail archive of the cygwin@sources.redhat.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

binmode in cygwin-1.1.4 (was: binmode in cygwin-1.1.3)


>>In cygwin-1.1.3 when I extract files from a tar archive containing files
>>with CRLF and redirect stdout to a file I get the file with CRCRLF.
>>(tar -O -xf file.tar > qqq)
>>
>>To prevent this in cygwin-1.1.2 I set CYGWIN=binmode, but this doesn't work
>>in cygwin-1.1.3.
>>
>>Can anyone please suggest what the problem is?

CF> Sorry.  It looks like I screwed up the correspondence between "CYGWIN=binmode"
CF> and stdin/stdout.

CF> The only work-arounds that I can think of are:

CF> 1) Fix tar so that -O sets stdout to O_BINARY (the correct fix).

CF> 2) Do something like:

CF>         sh -c "tar -O -xf file.tar > qqq"

CF>    and make sure that qqq goes to a directory that is mounted with
CF>    the -b option.

Ugh, I'm mazed again.

cygwin-1.1.4:

1) Consider qqq goes to a directory that is mounted without the -b option (CYGWIN=binmode).

If I issue

sh.exe -c "tar -O -xf file.tar > qqq"

qqq contains CRCRLF.

If I issue

cmd.exe /c "tar -O -xf file.tar > qqq"

qqq contains CRLF.

Why does output differ?


2) Why hinfo::init_std_file_from_handle doesn't use __fmode anymore?


3) What is the precedence of CYGWIN=binmode, Program Options, mounting
directories with the -b option, linking with binmode.o/textmode.o, explicit
opening a file in binary/text mode? And how does it affect regular
files and stdin/stdout?


Igor



--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]