delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp-workers/2001/08/26/05:03:54

From: sandmann AT clio DOT rice DOT edu (Charles Sandmann)
Message-Id: <10108260736.AA16755@clio.rice.edu>
Subject: Re: Read 3F00 STDIN problem on Win 2K ( was Re: Fseek on STDIN problem on Win 2K)
To: acottrel AT ihug DOT com DOT au (Andrew Cottrell)
Date: Sun, 26 Aug 2001 02:36:38 -0500 (CDT)
Cc: eliz AT is DOT elta DOT co DOT il (Eli Zaretskii), djgpp-workers AT delorie DOT com
In-Reply-To: <018d01c12e00$ce1317c0$0a02a8c0@acceleron> from "Andrew Cottrell" at Aug 26, 2001 05:29:11 PM
X-Mailer: ELM [version 2.5 PL2]
Mime-Version: 1.0
Reply-To: djgpp-workers AT delorie DOT com
Errors-To: nobody AT delorie DOT com
X-Mailing-List: djgpp-workers AT delorie DOT com
X-Unsubscribes-To: listserv AT delorie DOT com

> The extra call inside lseek() did not work. The variable to turn on the
> extra lseek seek is:
>     int USE_EXTRA_4201_LSEEK_CALL;

I believe this is because not everyone in the library calls lseek - there
are 5 different pieces of code which do this using the interrupt.  All
would need to be patched (and consistently).  And if we are doing it,
there is no need to call seek_cur twice in a row ... I would suggest
a common _seek() routine.

> Charles's other two proposals to mod fstat.c and filelen.c are now included
> in the source update and can be turned on via the two following variables:
>     int USE_FSTAT_WIN2K_DEVICE_FIX;

This actually is doesn't do anything for this example, but if you try to
redirect from NUL instead of "test" you will see now that stat succeeds
as a non-regular file instead of failing.

>     int USE_FILELENGTH_HANDLE_0_FIX;
> 
> Note: You will also need to set the first #if in main.c to zero for the real
> test app to be executed (the one that uses fstat()).

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019