blob: 9f4e67fbee078e9afe5a5dae95821f50383d1888 [file] [log] [blame]
#include "stdio_impl.h"
#include <string.h>
size_t __string_read(FILE* f, unsigned char* buf, size_t len) {
char* src = f->cookie;
size_t k = len + 256;
char* end = memchr(src, 0, k);
if (end)
k = end - src;
if (k < len)
len = k;
memcpy(buf, src, len);
f->rpos = (void*)(src + len);
f->rend = (void*)(src + k);
f->cookie = src + k;
return len;
}