X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=src%2Fstdio%2Fopen_wmemstream.c;h=a830b143ebe95cbf6dc4b038bc44b7357b824841;hb=fcaec912ed406659832f452e71a6c965308362dd;hp=0db77416cec819ce1cc7782bf68fd31c8955eb4a;hpb=c88f36f55623124d09f48631974ca38aaec00057;p=musl diff --git a/src/stdio/open_wmemstream.c b/src/stdio/open_wmemstream.c index 0db77416..a830b143 100644 --- a/src/stdio/open_wmemstream.c +++ b/src/stdio/open_wmemstream.c @@ -30,8 +30,8 @@ static size_t wms_write(FILE *f, const unsigned char *buf, size_t len) struct cookie *c = f->cookie; size_t len2; wchar_t *newbuf; - if (len >= c->space - c->pos) { - len2 = 2*c->space+1 | c->space+len+1; + if (len + c->pos >= c->space) { + len2 = 2*c->space+1 | c->pos+len+1; if (len2 > SSIZE_MAX/4) return 0; newbuf = realloc(c->buf, len2*4); if (!newbuf) return 0;