Files
oldlinux-files/study/linux-travel/minix-386/estdio21.tar/estdio21/fseek.c
2024-02-19 00:25:23 -05:00

26 lines
526 B
C

/* f s e e k */
#include "stdiolib.h"
/*LINTLIBRARY*/
int fseek F3(register FILE *, fp, long, offset, int, ptr)
{
if (FFLUSH(fp) || lseek(fileno(fp), (off_t) offset, ptr) == ((off_t) -1))
return EOF;
CLEARFLAG(fp, _IOEOF);
if (TESTFLAG(fp, _IORW)) {
SETFLSBUF(fp, __bwrupdate);
SETFLUSH(fp, __btfls);
SETFILBUF(fp, __brdupdate);
CLEARFLAG(fp, (_IOREAD | _IOWRITE));
CHECKNEXTREAD(fp);
CHECKNEXTWRITE(fp);
}
return 0;
}