home *** CD-ROM | disk | FTP | other *** search
-
- /*
- * FTELL.C
- *
- * (c)Copyright 1990, Matthew Dillon, All Rights Reserved
- */
-
- #include <stdio.h>
-
- long
- ftell(fi)
- FILE *fi;
- {
- long n = fi->sd_Offset;
-
- if (!(fi->sd_Flags & __SIF_FILE))
- return(EOF);
-
- if (fi->sd_WLeft >= 0)
- return(n + (fi->sd_WPtr - fi->sd_WBuf));
- else if (fi->sd_RLeft >= 0) {
- if (fi->sd_UC >= 0)
- --n;
- return(n - fi->sd_RLeft);
- }
- return(n);
- }
-
-