=category I/O Layers
Returns a new io_glue object that has the source defined as reading
-from specified file descriptor. Note that the the interface to receiving
+from specified file descriptor. Note that the interface to receiving
data from the io_glue callbacks hasn't been done yet.
ctx - and Imager context object
size_t
io_slurp(io_glue *ig, unsigned char **c) {
ssize_t rc;
- off_t orgoff;
io_ex_bchain *ieb;
unsigned char *cc;
io_type inn = ig->type;
ieb = ig->exdata;
cc = *c = mymalloc( ieb->length );
- orgoff = ieb->gpos;
-
bufchain_seek(ig, 0, SEEK_SET);
rc = bufchain_read(ig, cc, ieb->length);
work = ig->buffer;
}
+ /* there should always be buffer space the first time around, but
+ avoid a compiler warning here */
+ rc = -1;
while (work < buf_end && (rc = i_io_raw_read(ig, work, buf_end - work)) > 0) {
work += rc;
good = 1;
}
-/* realseek_seek(ig, offset, whence)
+/*
+=item realseek_seek(ig, offset, whence)
Implements seeking for a source that is seekable, the purpose of having this is to be able to
have an offset into a file that is different from what the underlying library thinks.
}
-/* buffer_seek(ig, offset, whence)
+/*
+=item buffer_seek(ig, offset, whence)
Implements seeking for a buffer source.
}
-/* bufchain_seek(ig, offset, whence)
+/*
+=item bufchain_seek(ig, offset, whence)
Implements seeking for a source that is seekable, the purpose of having this is to be able to
have an offset into a file that is different from what the underlying library thinks.