ref: 61d8ab34d1ccd7ffdc3fd0e3fe73bf1a87bf0af6
dir: /src/libc/stdio/fread.c/
#include <stdio.h>
#undef fread
size_t
fread(void * restrict ptr, size_t size, size_t nmemb,
FILE * restrict fp)
{
unsigned char *bp = ptr;
size_t n, i;
int c;
if (size == 0)
return 0;
for (n = 0; n < nmemb; n++) {
i = size;
do {
if ((c = getc(fp)) == EOF)
return n;
*bp++ = c;
} while (--i);
}
return n;
}