Lines Matching refs:offset
369 z_off64_t ZEXPORT gzseek64(file, offset, whence)
371 z_off64_t offset;
393 /* normalize offset to a SEEK_CUR specification */
395 offset -= state->x.pos;
397 offset += state->skip;
402 state->x.pos + offset >= 0) {
403 ret = LSEEK(state->fd, offset - state->x.have, SEEK_CUR);
412 state->x.pos += offset;
417 if (offset < 0) {
420 offset += state->x.pos;
421 if (offset < 0) /* before start of file! */
423 if (gzrewind(file) == -1) /* rewind, then skip to offset */
429 n = GT_OFF(state->x.have) || (z_off64_t)state->x.have > offset ?
430 (unsigned)offset : state->x.have;
434 offset -= n;
438 if (offset) {
440 state->skip = offset;
442 return state->x.pos + offset;
446 z_off_t ZEXPORT gzseek(file, offset, whence)
448 z_off_t offset;
453 ret = gzseek64(file, (z_off64_t)offset, whence);
488 z_off64_t offset;
498 /* compute and return effective offset in file */
499 offset = LSEEK(state->fd, 0, SEEK_CUR);
500 if (offset == -1)
503 offset -= state->strm.avail_in; /* don't count buffered input */
504 return offset;