| 3911 | |
| 3912 | /** @param {number=} offset */ |
| 3913 | var doReadv = (stream, iov, iovcnt, offset) => { |
| 3914 | var ret = 0; |
| 3915 | for (var i = 0; i < iovcnt; i++) { |
| 3916 | var ptr = HEAPU32[((iov)>>2)]; |
| 3917 | var len = HEAPU32[(((iov)+(4))>>2)]; |
| 3918 | iov += 8; |
| 3919 | var curr = FS.read(stream, HEAP8, ptr, len, offset); |
| 3920 | if (curr < 0) return -1; |
| 3921 | ret += curr; |
| 3922 | if (curr < len) break; // nothing more to read |
| 3923 | if (typeof offset != 'undefined') { |
| 3924 | offset += curr; |
| 3925 | } |
| 3926 | } |
| 3927 | return ret; |
| 3928 | }; |
| 3929 | |
| 3930 | function _fd_read(fd, iov, iovcnt, pnum) { |
| 3931 | try { |