X-Git-Url: http://nsz.repo.hu/git/?p=musl;a=blobdiff_plain;f=src%2Fstdio%2Fvswscanf.c;h=411dd39c9a27f763932126665cf95f9edc0bf422;hp=4396d7df644d85c9749701bc4e3c2b2f4d361c33;hb=1d92cddb1e1ed4b6cc0e55461727561e7a2522e0;hpb=73ec1d0495bb676012fd69491900ca8beb989ef7 diff --git a/src/stdio/vswscanf.c b/src/stdio/vswscanf.c index 4396d7df..411dd39c 100644 --- a/src/stdio/vswscanf.c +++ b/src/stdio/vswscanf.c @@ -1,4 +1,6 @@ #include "stdio_impl.h" +#include "libc.h" +#include static size_t wstring_read(FILE *f, unsigned char *buf, size_t len) { @@ -17,13 +19,13 @@ static size_t wstring_read(FILE *f, unsigned char *buf, size_t len) f->rend = f->buf + k; f->cookie = (void *)src; - if (!len) return 0; + if (!len || !k) return 0; *buf = *f->rpos++; return 1; } -int vswscanf(const wchar_t *s, const wchar_t *fmt, va_list ap) +int vswscanf(const wchar_t *restrict s, const wchar_t *restrict fmt, va_list ap) { unsigned char buf[256]; FILE f = { @@ -33,3 +35,5 @@ int vswscanf(const wchar_t *s, const wchar_t *fmt, va_list ap) }; return vfwscanf(&f, fmt, ap); } + +weak_alias(vswscanf,__isoc99_vswscanf);