@@ -305,8 +305,9 @@ export class Run {
305
305
this . state = RunState . Running
306
306
307
307
if ( this . process . stdout ) {
308
+ let frag = ""
308
309
this . process . stdout . on ( "data" , ( data : any ) => {
309
- this . processStdout ( data . toString ( ) )
310
+ frag = this . processStdout ( frag + data . toString ( ) )
310
311
} )
311
312
}
312
313
@@ -339,17 +340,16 @@ export class Run {
339
340
} )
340
341
}
341
342
342
- processStdout ( data : string | object ) : void {
343
+ processStdout ( data : string | object ) : string {
343
344
if ( typeof data === "string" ) {
344
345
if ( data . trim ( ) === "" ) {
345
- return
346
+ return ""
346
347
}
347
348
348
349
try {
349
350
data = JSON . parse ( data )
350
351
} catch ( e ) {
351
- this . err = `Failed to parse stdout: "${ data } "`
352
- return
352
+ return data as string
353
353
}
354
354
}
355
355
@@ -361,6 +361,8 @@ export class Run {
361
361
this . state = RunState . Finished
362
362
this . chatState = undefined
363
363
}
364
+
365
+ return ""
364
366
}
365
367
366
368
request ( tool : any ) {
@@ -655,12 +657,14 @@ class RunSubcommand extends Run {
655
657
super ( subCommand , path , content , opts , bin , gptscriptURL )
656
658
}
657
659
658
- processStdout ( data : string | object ) {
660
+ processStdout ( data : string | object ) : string {
659
661
if ( typeof data === "string" ) {
660
662
this . stdout = ( this . stdout || "" ) + data
661
663
} else {
662
664
this . stdout = JSON . stringify ( data )
663
665
}
666
+
667
+ return ""
664
668
}
665
669
}
666
670
0 commit comments