X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=src%2Fstdio%2Ffseek.c;h=c07f7e952642ba3bef35f4eb8a7865e6a8d1b5dc;hb=d32dadd60efb9d3b255351a3b532f8e4c3dd0db1;hp=439308f7574ba7efbd03ea9626c9041f3b7a322c;hpb=849e7603e9004fd292a93df64dd3524025f2987a;p=musl diff --git a/src/stdio/fseek.c b/src/stdio/fseek.c index 439308f7..c07f7e95 100644 --- a/src/stdio/fseek.c +++ b/src/stdio/fseek.c @@ -1,7 +1,14 @@ #include "stdio_impl.h" +#include int __fseeko_unlocked(FILE *f, off_t off, int whence) { + /* Fail immediately for invalid whence argument. */ + if (whence != SEEK_CUR && whence != SEEK_SET && whence != SEEK_END) { + errno = EINVAL; + return -1; + } + /* Adjust relative offset for unread data in buffer, if any. */ if (whence == SEEK_CUR && f->rend) off -= f->rend - f->rpos;