@@ -84,7 +84,7 @@ export class ToolRunner extends events.EventEmitter {
8484 data : Buffer ,
8585 strBuffer : string ,
8686 onLine : ( line : string ) => void
87- ) : void {
87+ ) : string {
8888 try {
8989 let s = strBuffer + data . toString ( )
9090 let n = s . indexOf ( os . EOL )
@@ -98,10 +98,12 @@ export class ToolRunner extends events.EventEmitter {
9898 n = s . indexOf ( os . EOL )
9999 }
100100
101- strBuffer = s
101+ return s
102102 } catch ( err ) {
103103 // streaming lines to console is best effort. Don't fail a build.
104104 this . _debug ( `error processing line. Failed with error ${ err } ` )
105+
106+ return ''
105107 }
106108 }
107109
@@ -444,7 +446,7 @@ export class ToolRunner extends events.EventEmitter {
444446 this . _getSpawnOptions ( this . options , fileName )
445447 )
446448
447- const stdbuffer = ''
449+ let stdbuffer = ''
448450 if ( cp . stdout ) {
449451 cp . stdout . on ( 'data' , ( data : Buffer ) => {
450452 if ( this . options . listeners && this . options . listeners . stdout ) {
@@ -455,15 +457,19 @@ export class ToolRunner extends events.EventEmitter {
455457 optionsNonNull . outStream . write ( data )
456458 }
457459
458- this . _processLineBuffer ( data , stdbuffer , ( line : string ) => {
459- if ( this . options . listeners && this . options . listeners . stdline ) {
460- this . options . listeners . stdline ( line )
460+ stdbuffer = this . _processLineBuffer (
461+ data ,
462+ stdbuffer ,
463+ ( line : string ) => {
464+ if ( this . options . listeners && this . options . listeners . stdline ) {
465+ this . options . listeners . stdline ( line )
466+ }
461467 }
462- } )
468+ )
463469 } )
464470 }
465471
466- const errbuffer = ''
472+ let errbuffer = ''
467473 if ( cp . stderr ) {
468474 cp . stderr . on ( 'data' , ( data : Buffer ) => {
469475 state . processStderr = true
@@ -482,11 +488,15 @@ export class ToolRunner extends events.EventEmitter {
482488 s . write ( data )
483489 }
484490
485- this . _processLineBuffer ( data , errbuffer , ( line : string ) => {
486- if ( this . options . listeners && this . options . listeners . errline ) {
487- this . options . listeners . errline ( line )
491+ errbuffer = this . _processLineBuffer (
492+ data ,
493+ errbuffer ,
494+ ( line : string ) => {
495+ if ( this . options . listeners && this . options . listeners . errline ) {
496+ this . options . listeners . errline ( line )
497+ }
488498 }
489- } )
499+ )
490500 } )
491501 }
492502
0 commit comments