\r
#ifndef REGTEST\r
\r
-uint_fast64_t _PDCLIB_ftell64( struct _PDCLIB_file_t * stream )\r
+uint_fast64_t _PDCLIB_ftell64_unlocked( struct _PDCLIB_file_t * stream )\r
{\r
/* ftell() must take into account:\r
- the actual *physical* offset of the file, i.e. the offset as recognized\r
return ( stream->pos.offset - ( ( (int)stream->bufend - (int)stream->bufidx ) + (int)stream->ungetidx ) );\r
}\r
\r
+uint_fast64_t _PDCLIB_ftell64( struct _PDCLIB_file_t * stream )\r
+{\r
+ flockfile( stream );\r
+ uint_fast64_t pos = _PDCLIB_ftell64_unlocked( stream );\r
+ funlockfile( stream );\r
+ return pos;\r
+}\r
+\r
#endif\r
\r
#ifdef TEST\r