1 #include "stdio_impl.h"
3 size_t __fwritex(const unsigned char *s, size_t l, FILE *f)
7 if (!f->wend && __towrite(f)) return 0;
9 if (l > f->wend - f->wpos) return f->write(f, s, l);
12 /* Match /^(.*\n|)/ */
13 for (i=l; i && s[i-1] != '\n'; i--);
15 if (f->write(f, s, i) < i)
22 memcpy(f->wpos, s, l);
27 size_t fwrite(const void *src, size_t size, size_t nmemb, FILE *f)
29 size_t k, l = size*nmemb;
32 k = __fwritex(src, l, f);
34 return k==l ? nmemb : l/size;
37 weak_alias(fwrite, fwrite_unlocked);