Subject: Problem with fsetpos
From: [email-masked] (Fred Seibel)

20 Nov 1997 23:27:35 -0800
Message-ID: <[email-masked]>
Mime-Version: 1.0
Content-Type: text/plain;
	charset="iso-8859-1"
Content-Transfer-Encoding: 7bit
To: <[email-masked]>

I have a UNIX program that makes extensive use of fgetpos and fsetpos to
move around a file.

I have discovered that fsetpos with values of offset greater than ~ 2000L
misses the corrrect value.  The
error is 16 at 2000 and 179 at 10000.  I am running WindowsNT 4.0
Workstation, with Service Patch 3.
I am running b18.

This error can be detected by inspection using gdb.
Open a text file a trivial program.

main(){
fp = fopen("foo.txt", "r");
fsetpos(fp, 2000L, SEEK_SET);

<breakpoint>

gdb>print *fp
shows the next text that will be read.
Open file in emacs and position to char 2000.

Observe that the file seems to be positioned at 1984. hmmmm.

Fred Seibel
Software Develoment Manager
AXAF Science Center
Smithsonian Astrophysical Observatory
[email-masked]

-
For help on using this list (especially unsubscribing), send a message to
"[email-masked]" with one line of text: "help".