Skip to content

Commit 2b2e142

Browse files
authored
Fix return size of fd_read, fd_pread, and fd_pwrite (#17608)
The three functions declared the return size pointer as `i32`, which is incorrect on WASM64. It is a `SIZE_TYPE`. Closes: #17607
1 parent 4cca7fb commit 2b2e142

File tree

1 file changed

+3
-3
lines changed

1 file changed

+3
-3
lines changed

src/library_wasi.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -293,7 +293,7 @@ var WasiLibrary = {
293293
{{{ receiveI64ParamAsI53('offset', cDefine('EOVERFLOW')) }}}
294294
var stream = SYSCALLS.getStreamFromFD(fd)
295295
var num = doWritev(stream, iov, iovcnt, offset);
296-
{{{ makeSetValue('pnum', 0, 'num', 'i32') }}};
296+
{{{ makeSetValue('pnum', 0, 'num', SIZE_TYPE) }}};
297297
return 0;
298298
#elif ASSERTIONS
299299
abort('fd_pwrite called without SYSCALLS_REQUIRE_FILESYSTEM');
@@ -330,7 +330,7 @@ var WasiLibrary = {
330330
#if SYSCALLS_REQUIRE_FILESYSTEM
331331
var stream = SYSCALLS.getStreamFromFD(fd);
332332
var num = doReadv(stream, iov, iovcnt);
333-
{{{ makeSetValue('pnum', 0, 'num', 'i32') }}};
333+
{{{ makeSetValue('pnum', 0, 'num', SIZE_TYPE) }}};
334334
return 0;
335335
#elif ASSERTIONS
336336
abort('fd_read called without SYSCALLS_REQUIRE_FILESYSTEM');
@@ -350,7 +350,7 @@ var WasiLibrary = {
350350
{{{ receiveI64ParamAsI53('offset', cDefine('EOVERFLOW')) }}}
351351
var stream = SYSCALLS.getStreamFromFD(fd)
352352
var num = doReadv(stream, iov, iovcnt, offset);
353-
{{{ makeSetValue('pnum', 0, 'num', 'i32') }}};
353+
{{{ makeSetValue('pnum', 0, 'num', SIZE_TYPE) }}};
354354
return 0;
355355
#elif ASSERTIONS
356356
abort('fd_pread called without SYSCALLS_REQUIRE_FILESYSTEM');

0 commit comments

Comments
 (0)