@@ -229,7 +229,8 @@ var WasiLibrary = {
229
229
}
230
230
return ret ;
231
231
} ,
232
- #else
232
+ #endif
233
+ #if ! SYSCALLS_REQUIRE_FILESYSTEM || WASM_WORKERS
233
234
// MEMFS filesystem disabled lite handling of stdout and stderr:
234
235
$printCharBuffers : [ null , [ ] , [ ] ] , // 1 => stdout, 2 => stderr
235
236
$printCharBuffers__internal : true ,
@@ -247,11 +248,7 @@ var WasiLibrary = {
247
248
buffer . push ( curr ) ;
248
249
}
249
250
} ,
250
- #endif // SYSCALLS_REQUIRE_FILESYSTEM
251
-
252
- #if SYSCALLS_REQUIRE_FILESYSTEM
253
- fd_write__deps : [ '$doWritev' ] ,
254
- #elif ( ! MINIMAL_RUNTIME || EXIT_RUNTIME )
251
+ #if ! MINIMAL_RUNTIME || EXIT_RUNTIME
255
252
$flush_NO_FILESYSTEM__deps : [ '$printChar' , '$printCharBuffers' ] ,
256
253
$flush_NO_FILESYSTEM : ( ) = > {
257
254
// flush anything remaining in the buffers during shutdown
@@ -261,17 +258,13 @@ var WasiLibrary = {
261
258
if ( printCharBuffers [ 1 ] . length ) printChar ( 1 , { { { charCode ( "\n" ) } } } ) ;
262
259
if ( printCharBuffers [ 2 ] . length ) printChar ( 2 , { { { charCode ( "\n" ) } } } ) ;
263
260
} ,
264
- fd_write__deps : [ '$ flush_NO_FILESYSTEM' , '$printChar' ] ,
265
- fd_write__postset : ( ) = > addAtExit ( ' flush_NO_FILESYSTEM()' ) ,
261
+ $fd_write_nofs__postset : ( ) => addAtExit ( ' flush_NO_FILESYSTEM()' ) ,
262
+ $fd_write_nofs__deps : [ '$printChar' , '$ flush_NO_FILESYSTEM' ] ,
266
263
#else
267
- fd_write__deps : [ '$printChar' ] ,
264
+ $fd_write_nofs__deps : [ '$printChar' ] ,
268
265
#endif
269
- fd_write : ( fd , iov , iovcnt , pnum ) => {
270
- #if SYSCALLS_REQUIRE_FILESYSTEM
271
- var stream = SYSCALLS . getStreamFromFD ( fd ) ;
272
- var num = doWritev ( stream , iov , iovcnt ) ;
273
- #else
274
- // hack to support printf in SYSCALLS_REQUIRE_FILESYSTEM=0
266
+ $fd_write_nofs__sig : 'iippp' ,
267
+ $fd_write_nofs : ( fd , iov , iovcnt , pnum ) => {
275
268
var num = 0 ;
276
269
for ( var i = 0 ; i < iovcnt ; i ++ ) {
277
270
var ptr = { { { makeGetValue ( 'iov' , C_STRUCTS . iovec . iov_base , '*' ) } } } ;
@@ -282,10 +275,36 @@ var WasiLibrary = {
282
275
}
283
276
num += len ;
284
277
}
285
- #endif // SYSCALLS_REQUIRE_FILESYSTEM
286
278
{ { { makeSetValue ( 'pnum' , 0 , 'num' , SIZE_TYPE ) } } } ;
287
279
return 0 ;
288
280
} ,
281
+ #endif
282
+
283
+ #if SYSCALLS_REQUIRE_FILESYSTEM
284
+ fd_write__deps : [
285
+ '$doWritev' ,
286
+ #if WASM_WORKERS
287
+ '$fd_write_nofs' ,
288
+ #endif
289
+ ] ,
290
+ fd_write : ( fd , iov , iovcnt , pnum ) = > {
291
+ #if WASM_WORKERS
292
+ if ( ENVIRONMENT_IS_WASM_WORKER ) {
293
+ return fd_write_nofs ( fd , iov , iovcnt , pnum ) ;
294
+ }
295
+ #endif // WASM_WORKERS
296
+ var stream = SYSCALLS . getStreamFromFD ( fd ) ;
297
+ var num = doWritev ( stream , iov , iovcnt ) ;
298
+ { { { makeSetValue ( 'pnum' , 0 , 'num' , SIZE_TYPE ) } } } ;
299
+ return 0 ;
300
+ } ,
301
+ #else
302
+ fd_write__deps : [ '$fd_write_nofs' ] ,
303
+ fd_write : ( fd , iov , iovcnt , pnum ) = > {
304
+ // May be wrapped by wrapSyscallFunction
305
+ return fd_write_nofs ( fd , iov , iovcnt , pnum ) ;
306
+ } ,
307
+ #endif
289
308
290
309
#if SYSCALLS_REQUIRE_FILESYSTEM
291
310
fd_pwrite__deps : [ '$doWritev' ] ,
0 commit comments