msvcrt: fread: fill buffer on small reads
Duane Clark
dclark at akamail.com
Tue Oct 10 19:07:02 CDT 2006
Alexandre Julliard wrote:
> Markus Amsler <markus.amsler at oribi.org> writes:
>
>>
>> + /* fill empty buffer on small reads */
>> + if(!file->_cnt && rcnt <= MSVCRT_BUFSIZ) {
>> + MSVCRT__filbuf(file);
>> + /* reset internal buffer */
>> + file->_cnt++;
>> + file->_ptr = file->_base;
>> + }
>
> You need to handle errors properly, and MSVCRT__filbuf is probably not
> the most appropriate thing to use here, a simple read would be
> better.
>
Are you referring to _read() or read_i()? Those don't have an associated
internal file buffer/cache (I guess because they don't have an
associated file->_cnt and _ptr). Or were you referring to some other
read call?
fread already does a _read() once it determines the current buffer is empty.
More information about the wine-devel
mailing list