Mailing-List: contact cygwin-help AT sourceware DOT cygnus DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT sources DOT redhat DOT com Delivered-To: mailing list cygwin AT sources DOT redhat DOT com X-Apparently-From: Message-ID: <3A761CE0.231FBF34@yahoo.com> Date: Mon, 29 Jan 2001 20:46:08 -0500 From: Earnie Boyd Reply-To: Earnie Boyd X-Mailer: Mozilla 4.76 [en] (X11; U; Linux 2.2.171 i686) X-Accept-Language: en MIME-Version: 1.0 To: Josh Schulte CC: Earnie Boyd Subject: Re: Bug In Mount? (Bug in read()?) References: <67677D360C1FD411BB4000B0D02080418031DC AT eqexchange DOT equildom DOT equilibrium DOT com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Josh Schulte wrote: > Correct me if I am wrong. \r\n are at the end of every line in a dos > text file. mounting stuff in binmode causes calls to the system call > read() to return the line as if there was only a \n at the end. mounting > stuff in textmode causes calls to the system call read() to return the > line as if there was only a \n at the end. If a file has DOS (\r\n) line endings and the fd is in binary mode the data will end with \r when read. If the fd is in text mode the data will not end with \r, the \r will have been removed and the count of characters read will be decremented by one. > > I am getting \r\n regardless of what mode I have the directories mounted > as when I read from perl, as demonstrated by the script below. I have > recreated the problem on two computers now. Can anyone else recreate > this problem? Is it a bug in cygwin? It's not a bug in Cygwin. I've already posted that I tried your example with the expected results. I suggest that the contents of your file contains DOS style line endings and the fd for the read is in binary mode. > > There is only one perl on my system. (Earnie: The /usr/local/bin/perl is > a link I create for backward compatability in some of my other scripts.) > I did a search of the entire system just to double check. So that is not > the problem. Ok, this shouldn't be a problem then. > > Thanks for any help, > Josh Earnie. > > > PERL SCRIPT > > ----------- > > > > #!/usr/local/bin/perl > > > > @what = split(/\n/, `cat contents`); > > > > foreach $line (@what) > > { > > print "***>$line<-\n"; > > } > > > > CONTENTS OF FILE > > ---------------- > > > > line one > > line two > > line three > > > MY RESULTS: > ----------- > <-*>line one > <-*>line two > <-*>line three > > -----Original Message----- > From: Earnie Boyd [mailto:earnie_boyd AT yahoo DOT com] > Sent: Thursday, January 25, 2001 2:13 PM > To: Josh Schulte > Cc: cygwin AT cygwin DOT com > Subject: Re: Bug In Mount?, Was [Odd/New Perl Behavior] > > Could be that you have \r\n in your contents file. Could be that you've > more than one version of perl installed. Note, the current perl is > located at /usr/bin/perl not /usr/local/bin/perl. > > Cheers, > Earnie. > > -- > Want to unsubscribe from this list? > Check out: http://cygwin.com/ml/#unsubscribe-simple _________________________________________________________ Do You Yahoo!? Get your free @yahoo.com address at http://mail.yahoo.com -- Want to unsubscribe from this list? Check out: http://cygwin.com/ml/#unsubscribe-simple