File tree 3 files changed +11
-8
lines changed
3 files changed +11
-8
lines changed Original file line number Diff line number Diff line change @@ -167,8 +167,9 @@ port.on('message', (message) => {
167
167
CJSLoader . Module . runMain ( filename ) ;
168
168
}
169
169
} else if ( message . type === STDIO_PAYLOAD ) {
170
- const { stream, chunk, encoding } = message ;
171
- process [ stream ] . push ( chunk , encoding ) ;
170
+ const { stream, chunks } = message ;
171
+ for ( const { chunk, encoding } of chunks )
172
+ process [ stream ] . push ( chunk , encoding ) ;
172
173
} else {
173
174
assert (
174
175
message . type === STDIO_WANTS_MORE_DATA ,
Original file line number Diff line number Diff line change @@ -243,8 +243,11 @@ class Worker extends EventEmitter {
243
243
return this [ kOnErrorMessage ] ( message . error ) ;
244
244
case messageTypes . STDIO_PAYLOAD :
245
245
{
246
- const { stream, chunk, encoding } = message ;
247
- return this [ kParentSideStdio ] [ stream ] . push ( chunk , encoding ) ;
246
+ const { stream, chunks } = message ;
247
+ const readable = this [ kParentSideStdio ] [ stream ] ;
248
+ for ( const { chunk, encoding } of chunks )
249
+ readable . push ( chunk , encoding ) ;
250
+ return ;
248
251
}
249
252
case messageTypes . STDIO_WANTS_MORE_DATA :
250
253
{
Original file line number Diff line number Diff line change @@ -206,12 +206,11 @@ class WritableWorkerStdio extends Writable {
206
206
this [ kWritableCallbacks ] = [ ] ;
207
207
}
208
208
209
- _write ( chunk , encoding , cb ) {
209
+ _writev ( chunks , cb ) {
210
210
this [ kPort ] . postMessage ( {
211
211
type : messageTypes . STDIO_PAYLOAD ,
212
212
stream : this [ kName ] ,
213
- chunk,
214
- encoding
213
+ chunks : chunks . map ( ( { chunk, encoding } ) => ( { chunk, encoding } ) )
215
214
} ) ;
216
215
this [ kWritableCallbacks ] . push ( cb ) ;
217
216
if ( this [ kPort ] [ kWaitingStreams ] ++ === 0 )
@@ -222,7 +221,7 @@ class WritableWorkerStdio extends Writable {
222
221
this [ kPort ] . postMessage ( {
223
222
type : messageTypes . STDIO_PAYLOAD ,
224
223
stream : this [ kName ] ,
225
- chunk : null
224
+ chunks : [ { chunk : null , encoding : '' } ]
226
225
} ) ;
227
226
cb ( ) ;
228
227
}
You can’t perform that action at this time.
0 commit comments