Annotation of coherent/b/lib/libc/stdio/ftell.c, revision 1.1

1.1     ! root        1: /*
        !             2:  * libc/stdio/ftell.c
        !             3:  * ANSI-compliant C standard i/o library.
        !             4:  * ftell()
        !             5:  * ANSI 4.9.9.4.
        !             6:  * Find logical file position on stream.
        !             7:  */
        !             8: 
        !             9: #include <stdio.h>
        !            10: #include <errno.h>
        !            11: 
        !            12: #define        EFGETPOS        EINVAL
        !            13: 
        !            14: long
        !            15: ftell(stream) register FILE *stream;
        !            16: {
        !            17:        register long offset;
        !            18:        register _FILE2 *f2p;
        !            19: 
        !            20:        f2p = stream->_f2p;
        !            21: 
        !            22:        if ((offset=lseek(fileno(stream), 0L, SEEK_CUR)) == -1L) {
        !            23:                errno = EFGETPOS;
        !            24:                return offset;
        !            25:        }
        !            26:        if (f2p->_bp!=NULL)
        !            27:                offset += stream->_cp - f2p->_dp;
        !            28:        if (stream->_ff2&_FUNGOT)
        !            29:                --offset;
        !            30:        return offset;
        !            31: }
        !            32: 
        !            33: /* end of libc/stdio/ftell.c */

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.