Lines Matching refs:current
74 file_block_read (struct file_data *current, size_t size) in file_block_read() argument
76 if (size && ! current->eof) in file_block_read()
78 size_t s = block_read (current->desc, in file_block_read()
79 FILE_BUFFER (current) + current->buffered, size); in file_block_read()
81 pfatal_with_name (current->name); in file_block_read()
82 current->buffered += s; in file_block_read()
83 current->eof = s < size; in file_block_read()
99 sip (struct file_data *current, bool skip_test) in sip() argument
102 if (current->desc < 0) in sip()
105 current->bufsize = sizeof (word); in sip()
106 current->buffer = xmalloc (current->bufsize); in sip()
110 current->bufsize = buffer_lcm (sizeof (word), in sip()
111 STAT_BLOCKSIZE (current->stat), in sip()
113 current->buffer = xmalloc (current->bufsize); in sip()
119 bool was_binary = set_binary_mode (current->desc, 1); in sip()
121 file_block_read (current, current->bufsize); in sip()
122 buffered = current->buffered; in sip()
131 if (lseek (current->desc, - buffered, SEEK_CUR) == -1) in sip()
132 pfatal_with_name (current->name); in sip()
133 set_binary_mode (current->desc, 0); in sip()
134 current->buffered = 0; in sip()
135 current->eof = 0; in sip()
138 return binary_file_p (current->buffer, buffered); in sip()
142 current->buffered = 0; in sip()
143 current->eof = 0; in sip()
150 slurp (struct file_data *current) in slurp() argument
154 if (current->desc < 0) in slurp()
160 if (S_ISREG (current->stat.st_mode)) in slurp()
167 size_t file_size = current->stat.st_size; in slurp()
169 if (file_size != current->stat.st_size || cc < file_size in slurp()
173 if (current->bufsize < cc) in slurp()
175 current->bufsize = cc; in slurp()
176 current->buffer = xrealloc (current->buffer, cc); in slurp()
183 if (current->buffered <= file_size) in slurp()
185 file_block_read (current, file_size + 1 - current->buffered); in slurp()
186 if (current->buffered <= file_size) in slurp()
194 file_block_read (current, current->bufsize - current->buffered); in slurp()
196 if (current->buffered) in slurp()
198 while (current->buffered == current->bufsize) in slurp()
200 if (PTRDIFF_MAX / 2 - sizeof (word) < current->bufsize) in slurp()
202 current->bufsize *= 2; in slurp()
203 current->buffer = xrealloc (current->buffer, current->bufsize); in slurp()
204 file_block_read (current, current->bufsize - current->buffered); in slurp()
209 cc = current->buffered + 2 * sizeof (word); in slurp()
210 current->bufsize = cc - cc % sizeof (word); in slurp()
211 current->buffer = xrealloc (current->buffer, current->bufsize); in slurp()
219 find_and_hash_each_line (struct file_data *current) in find_and_hash_each_line() argument
222 unsigned char const *p = (unsigned char const *) current->prefix_end; in find_and_hash_each_line()
228 char const **linbuf = current->linbuf; in find_and_hash_each_line()
229 lin alloc_lines = current->alloc_lines; in find_and_hash_each_line()
231 lin linbuf_base = current->linbuf_base; in find_and_hash_each_line()
236 char const *suffix_begin = current->suffix_begin; in find_and_hash_each_line()
237 char const *bufend = FILE_BUFFER (current) + current->buffered; in find_and_hash_each_line()
392 && current->missing_newline in find_and_hash_each_line()
467 current->buffered_lines = line; in find_and_hash_each_line()
502 current->linbuf = linbuf; in find_and_hash_each_line()
503 current->valid_lines = line; in find_and_hash_each_line()
504 current->alloc_lines = alloc_lines; in find_and_hash_each_line()
505 current->equivs = cureqs; in find_and_hash_each_line()
517 prepare_text (struct file_data *current) in prepare_text() argument
519 size_t buffered = current->buffered; in prepare_text()
520 char *p = FILE_BUFFER (current); in prepare_text()
524 current->missing_newline = 0; in prepare_text()
528 current->missing_newline = 1; in prepare_text()
549 current->buffered = buffered; in prepare_text()