This is the mail archive of the cygwin@sourceware.cygnus.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]

Re: Porting and reading files


---Terrill Yuhas  wrote:
>
> I've been trying to port over a database application and think I have 
> found my problem but I haven't had much luck solving it.  It seems 
> to be the CR/LF situation.  I say that because when I run dos2unix 
> on a script file, the ported app reads it fine.  Sorting through the 
> archives, I see mention of when porting a UNIX app to DOS, you 
> have to read all files as binary instead of text (if I understood
that 
> correctly).  Can someone point me out to examples or a bit more 
> explanation?

The problem is most likely one of the seek commands.  When opening the
file in `text processing mode' (the default for MS) and the files
actually contain \r\n line endings then the seek commands lie about
the number of bytes read.  If the file contains a \n line ending
regardless of the `processing mode' the seek commands return the
correct value for the number of bytes read.

You will have a different problem if you specify the _O_BINARY file
processing mode in your open function.  You will now have to manually
deal with the \r of \r\n as you will now have the \r as data.  Seeing
that it is likely for you to have a \r\n line ending in any script
file for any MS OS then I suggest that you  either modify your code to
open in binary processing mode and remove the \r from the lines
yourself or open in text processing mode and rework the seek coding.

> 
> Thanks for any help,

You are welcome,

-        \\||//
---o0O0--Earnie--0O0o----
--earnie_boyd@yahoo.com--
------ooo0O--O0ooo-------

To fix the most serious problems:
  Please, _READ_ the IMPORTANT UPGRADE NOTICE at the end of this note.
  Please, ensure that there is only _ONE_ cygwinb19.dll.
  Please, ensure that _ALL_ b18 binaries have been removed.

Please, research your question via the Searchable Mail Archives first.
http://www.cygnus.com/ml/gnu-win32          (Searchable Mail Archives)

Check out these great gnu-win32 related sites:
ftp://ftp.cygnus.com/pub/gnu-win32/latest/                  (ftp site)
http://www.cygnus.com/pubs/gnupro/                    (Comercial Page)
http://www.cygnus.com/misc/gnu-win32/                   (Project Page)
http://dvpraktikum.informatik.uni-koeln.de:3232/ 
                                            (Cygwin32 Porting Project)
http://www.lexa.ru/sos                               (Sergey Okhapkin)
ftp://www.lexa.ru/pub/domestic/sos/                (Sergey's ftp site)
http://www.fu.is.saga-u.ac.jp/~colin/gcc.html (Colin Peters - Mingw32)
http://www.xraylith.wisc.edu/~khan/software/gnu-win32/    (Mumit Khan)
ftp://ftp.hksys.com/pub/mirrors/EGCS-Win32/   (Jeremy Bettis - mirror)
http://gnu-win32.paranoia.ru                   (Chuck Bogorad's ports)
http://www.downloadwizard.com/ak/gnu-win32/bash.html
                                        (GNU-Win32 Bash Configuration)
http://www.parallax.co.uk/~andyp/index_text.html  (Andy Piper - ports)
http://www.tiac.net/users/cgf     (Christopher Faylor - package ports)
http://aquarius.franken.de/docs/develop/gnuwin32/GNUWin32.txt
                                               (Package Porting Notes)
ftp://ftp.franken.de/pub/win32/develop/gnuwin32/cygwin32/ 
                                                       (German mirror)
http://www.dol.ru/users/valtul      (Valery Tulnikov - software ports)
ftp://ftp.cs.nyu.edu/pub/local/fox/cygwin32 (David fox - RPM packages)
http://www.itribe.net/virtunix/winhelp-man-pages/     (HTML Man Pages)
http://www.kedemel.demon.co.uk/                       (Darren's ports)
http://www.multione.capgemini.fr/tools/pack_ipc/
                               ("Ludovic Lange" <llange@capgemini.fr>)

Help for Win32 Beginners: 
 http://www.relisoft.com
 http://www.program.com/resources/win32.html

DISCLAIMER: These links or links from these pages to other sites do
not constitute an endorsement of any entities, advertisers, products 
or services therein. I am not responsible for and do not control or 
monitor the content of these sites or the accuracy of information 
found therein.

-------------------- IMPORTANT UPGRADE NOTICE ------------------------
You should get the following to update your cygwinb19 package:

Sergey Okhapkin's coolview package which contains an updated 
cygwinb19.dll.  (Yes, even if you've already downloaded the b19.1 
update from the Cygnus Site).

Mumit Khan's compilation of EGCS for the cygwinb19.dll; especially if 
you're using the C++ compiler.  The current version of the compiler
that 
comes with the tools has lots of problems that have been fixed with 
the EGCS version.  This is a drop-in replacement for the GCC toolset.

URL's are listed above.
-----------------------------------------------------------------------

_________________________________________________________
DO YOU YAHOO!?
Get your free @yahoo.com address at http://mail.yahoo.com

-
For help on using this list (especially unsubscribing), send a message to
"gnu-win32-request@cygnus.com" with one line of text: "help".


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