+ if (fstat(fileno(iop), &stbuf) < 0 || stbuf.st_blksize <= NULL)
+ size = BUFSIZ;
+ else
+ size = stbuf.st_blksize;
+ if (iop == stdin)
+ iop->_base = _sibuf;
+ else {
+ if ((iop->_base = malloc(size)) == NULL) {
+ iop->_flag |= _IONBF;
+ goto tryagain;
+ }
+ iop->_flag |= _IOMYBUF;