@@ -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,12 @@ 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 : ( fd , iov , iovcnt , pnum ) => {
275
267
var num = 0 ;
276
268
for ( var i = 0 ; i < iovcnt ; i ++ ) {
277
269
var ptr = { { { makeGetValue ( 'iov' , C_STRUCTS . iovec . iov_base , '*' ) } } } ;
@@ -282,10 +274,30 @@ var WasiLibrary = {
282
274
}
283
275
num += len ;
284
276
}
285
- #endif // SYSCALLS_REQUIRE_FILESYSTEM
277
+ } ,
278
+ #endif
279
+
280
+ #if SYSCALLS_REQUIRE_FILESYSTEM
281
+ fd_write__deps : [
282
+ '$doWritev' ,
283
+ #if WASM_WORKERS
284
+ '$fd_write_nofs' ,
285
+ #endif
286
+ ] ,
287
+ fd_write : ( fd , iov , iovcnt , pnum ) => {
288
+ #if WASM_WORKERS
289
+ if ( ENVIRONMENT_IS_WASM_WORKER ) {
290
+ return fd_write_nofs ( fd , iov , iovcnt , pnum ) ;
291
+ }
292
+ #endif // WASM_WORKERS
293
+ var stream = SYSCALLS . getStreamFromFD ( fd ) ;
294
+ var num = doWritev ( stream , iov , iovcnt ) ;
286
295
{ { { makeSetValue ( 'pnum' , 0 , 'num' , SIZE_TYPE ) } } } ;
287
296
return 0 ;
288
297
} ,
298
+ #else
299
+ fd_write : '$fd_write_nofs' ,
300
+ #endif
289
301
290
302
#if SYSCALLS_REQUIRE_FILESYSTEM
291
303
fd_pwrite__deps : [ '$doWritev' ] ,
0 commit comments