@@ -883,7 +883,7 @@ export abstract class AbstractTaskService extends Disposable implements ITaskSer
883883 resolve ( undefined ) ;
884884 }
885885 } else {
886- resolve ( this . executeTask ( task , resolver ) ) ;
886+ resolve ( this . executeTask ( task , resolver , runSource ) ) ;
887887 }
888888 } ) . then ( ( value ) => {
889889 if ( runSource === TaskRunSource . User ) {
@@ -1452,7 +1452,7 @@ export abstract class AbstractTaskService extends Disposable implements ITaskSer
14521452 } ;
14531453 }
14541454
1455- private executeTask ( task : Task , resolver : ITaskResolver ) : Promise < ITaskSummary > {
1455+ private executeTask ( task : Task , resolver : ITaskResolver , runSource ?: TaskRunSource ) : Promise < ITaskSummary > {
14561456 enum SaveBeforeRunConfigOptions {
14571457 Always = 'always' ,
14581458 Never = 'never' ,
@@ -1464,7 +1464,7 @@ export abstract class AbstractTaskService extends Disposable implements ITaskSer
14641464 const execTask = async ( task : Task , resolver : ITaskResolver ) : Promise < ITaskSummary > => {
14651465 return ProblemMatcherRegistry . onReady ( ) . then ( ( ) => {
14661466 let executeResult = this . getTaskSystem ( ) . run ( task , resolver ) ;
1467- return this . handleExecuteResult ( executeResult ) ;
1467+ return this . handleExecuteResult ( executeResult , runSource ) ;
14681468 } ) ;
14691469 } ;
14701470
@@ -1501,15 +1501,17 @@ export abstract class AbstractTaskService extends Disposable implements ITaskSer
15011501 }
15021502 }
15031503
1504- private async handleExecuteResult ( executeResult : ITaskExecuteResult ) : Promise < ITaskSummary > {
1504+ private async handleExecuteResult ( executeResult : ITaskExecuteResult , runSource ?: TaskRunSource ) : Promise < ITaskSummary > {
15051505 if ( executeResult . task . taskLoadMessages && executeResult . task . taskLoadMessages . length > 0 ) {
15061506 executeResult . task . taskLoadMessages . forEach ( loadMessage => {
15071507 this . _outputChannel . append ( loadMessage + '\n' ) ;
15081508 } ) ;
15091509 this . showOutput ( ) ;
15101510 }
15111511
1512- await this . setRecentlyUsedTask ( executeResult . task ) ;
1512+ if ( runSource === TaskRunSource . User ) {
1513+ await this . setRecentlyUsedTask ( executeResult . task ) ;
1514+ }
15131515 if ( executeResult . kind === TaskExecuteKind . Active ) {
15141516 let active = executeResult . active ;
15151517 if ( active && active . same ) {
0 commit comments