union value *buffer; /* I/O buffer, NULL if none. */
size_t buffer_used; /* Number of values used in buffer. */
size_t buffer_size; /* Buffer size in values. */
union value *buffer; /* I/O buffer, NULL if none. */
size_t buffer_used; /* Number of values used in buffer. */
size_t buffer_size; /* Buffer size in values. */
cf->buffer = NULL;
cf->buffer_size = ROUND_UP (cf->value_cnt, IO_BUF_SIZE);
if (cf->value_cnt > 0 && cf->buffer_size % cf->value_cnt > 64)
cf->buffer = NULL;
cf->buffer_size = ROUND_UP (cf->value_cnt, IO_BUF_SIZE);
if (cf->value_cnt > 0 && cf->buffer_size % cf->value_cnt > 64)
file_ofs = 0;
if (lseek (reader->fd, file_ofs, SEEK_SET) != file_ofs)
io_error (cf, _("%s: Seeking temporary file: %s."),
file_ofs = 0;
if (lseek (reader->fd, file_ofs, SEEK_SET) != file_ofs)
io_error (cf, _("%s: Seeking temporary file: %s."),
reader->cf->buffer_size * sizeof *reader->buffer);
if (bytes < 0)
io_error (reader->cf, _("%s: Reading temporary file: %s."),
reader->cf->buffer_size * sizeof *reader->buffer);
if (bytes < 0)
io_error (reader->cf, _("%s: Reading temporary file: %s."),
else if (bytes != reader->cf->buffer_size * sizeof *reader->buffer)
io_error (reader->cf, _("%s: Temporary file ended unexpectedly."),
else if (bytes != reader->cf->buffer_size * sizeof *reader->buffer)
io_error (reader->cf, _("%s: Temporary file ended unexpectedly."),