• Home
  • Raw
  • Download

Lines Matching refs:fp

49 fseeko(FILE *fp, off_t offset, int whence)  in fseeko()  argument
64 if ((seekfn = fp->_seek) == NULL) { in fseeko()
73 FLOCKFILE(fp); in fseeko()
82 __sflush(fp); /* may adjust seek offset on append stream */ in fseeko()
83 if (fp->_flags & __SOFF) in fseeko()
84 curoff = fp->_offset; in fseeko()
86 curoff = (*seekfn)(fp->_cookie, (fpos_t)0, SEEK_CUR); in fseeko()
88 FUNLOCKFILE(fp); in fseeko()
92 if (fp->_flags & __SRD) { in fseeko()
93 curoff -= fp->_r; in fseeko()
94 if (HASUB(fp)) in fseeko()
95 curoff -= fp->_ur; in fseeko()
96 } else if (fp->_flags & __SWR && fp->_p != NULL) in fseeko()
97 curoff += fp->_p - fp->_bf._base; in fseeko()
111 FUNLOCKFILE(fp); in fseeko()
124 if (fp->_bf._base == NULL) in fseeko()
125 __smakebuf(fp); in fseeko()
126 if (fp->_flags & (__SWR | __SRW | __SNBF | __SNPT)) in fseeko()
128 if ((fp->_flags & __SOPT) == 0) { in fseeko()
130 fp->_file < 0 || fstat(fp->_file, &st) || in fseeko()
132 fp->_flags |= __SNPT; in fseeko()
135 fp->_blksize = st.st_blksize; in fseeko()
136 fp->_flags |= __SOPT; in fseeko()
146 if (fstat(fp->_file, &st)) in fseeko()
152 if (fp->_flags & __SOFF) in fseeko()
153 curoff = fp->_offset; in fseeko()
155 curoff = (*seekfn)(fp->_cookie, (fpos_t)0, SEEK_CUR); in fseeko()
159 curoff -= fp->_r; in fseeko()
160 if (HASUB(fp)) in fseeko()
161 curoff -= fp->_ur; in fseeko()
170 if (HASUB(fp)) { in fseeko()
171 curoff += fp->_r; /* kill off ungetc */ in fseeko()
172 n = fp->_up - fp->_bf._base; in fseeko()
174 n += fp->_ur; in fseeko()
176 n = fp->_p - fp->_bf._base; in fseeko()
178 n += fp->_r; in fseeko()
187 if ((fp->_flags & __SMOD) == 0 && in fseeko()
191 fp->_p = fp->_bf._base + o; in fseeko()
192 fp->_r = n - o; in fseeko()
193 if (HASUB(fp)) in fseeko()
194 FREEUB(fp); in fseeko()
195 fp->_flags &= ~__SEOF; in fseeko()
196 FUNLOCKFILE(fp); in fseeko()
208 curoff = target & ~(fp->_blksize - 1); in fseeko()
209 if ((*seekfn)(fp->_cookie, curoff, SEEK_SET) == POS_ERR) in fseeko()
211 fp->_r = 0; in fseeko()
212 fp->_p = fp->_bf._base; in fseeko()
213 if (HASUB(fp)) in fseeko()
214 FREEUB(fp); in fseeko()
215 fp->_flags &= ~__SEOF; in fseeko()
218 if (__srefill(fp) || (size_t)fp->_r < n) in fseeko()
220 fp->_p += n; in fseeko()
221 fp->_r -= n; in fseeko()
223 FUNLOCKFILE(fp); in fseeko()
231 if (__sflush(fp) || in fseeko()
232 (*seekfn)(fp->_cookie, (fpos_t)offset, whence) == POS_ERR) { in fseeko()
233 FUNLOCKFILE(fp); in fseeko()
237 if (HASUB(fp)) in fseeko()
238 FREEUB(fp); in fseeko()
239 fp->_p = fp->_bf._base; in fseeko()
240 fp->_r = 0; in fseeko()
242 fp->_flags &= ~__SEOF; in fseeko()
243 FUNLOCKFILE(fp); in fseeko()
254 fseek(FILE *fp, long offset, int whence) in fseek() argument
258 return(fseeko(fp, off, whence)); in fseek()