@@ -291,9 +291,11 @@ export class IssueFeatureRegistrar implements vscode.Disposable {
291291 if ( ! title || ! body ) {
292292 return ;
293293 }
294- await this . doCreateIssue ( this . createIssueInfo ?. document , this . createIssueInfo ?. newIssue , title , body , assignees , labels , this . createIssueInfo ?. lineNumber , this . createIssueInfo ?. insertIndex ) ;
294+ const createSucceeded = await this . doCreateIssue ( this . createIssueInfo ?. document , this . createIssueInfo ?. newIssue , title , body , assignees , labels , this . createIssueInfo ?. lineNumber , this . createIssueInfo ?. insertIndex ) ;
295295 this . createIssueInfo = undefined ;
296- await vscode . commands . executeCommand ( 'workbench.action.closeActiveEditor' ) ;
296+ if ( createSucceeded ) {
297+ await vscode . commands . executeCommand ( 'workbench.action.closeActiveEditor' ) ;
298+ }
297299 }
298300
299301 async editQuery ( query : vscode . TreeItem ) {
@@ -505,14 +507,15 @@ ${body ?? ''}\n
505507 createParams . labels = filteredLabels ;
506508 }
507509
508- private async doCreateIssue ( document : vscode . TextDocument | undefined , newIssue : NewIssue | undefined , title : string , issueBody : string | undefined , assignees : string [ ] | undefined , labels : string [ ] | undefined , lineNumber : number | undefined , insertIndex : number | undefined ) {
510+ private async doCreateIssue ( document : vscode . TextDocument | undefined , newIssue : NewIssue | undefined , title : string , issueBody : string | undefined , assignees : string [ ] | undefined ,
511+ labels : string [ ] | undefined , lineNumber : number | undefined , insertIndex : number | undefined ) : Promise < boolean > {
509512 let origin : PullRequestDefaults | undefined ;
510513 try {
511514 origin = await this . manager . getPullRequestDefaults ( ) ;
512515 } catch ( e ) {
513516 // There is no remote
514517 vscode . window . showErrorMessage ( 'There is no remote. Can\'t create an issue.' ) ;
515- return ;
518+ return false ;
516519 }
517520 const body : string | undefined = issueBody || newIssue ?. document . isUntitled ? issueBody : ( await createGithubPermalink ( this . gitAPI , newIssue ) ) . permalink ;
518521 const createParams : Octokit . IssuesCreateParams = {
@@ -542,7 +545,9 @@ ${body ?? ''}\n
542545 } ) ;
543546 }
544547 this . _stateManager . refreshCacheNeeded ( ) ;
548+ return true ;
545549 }
550+ return false ;
546551 }
547552
548553 private async getPermalinkWithError ( ) : Promise < string | undefined > {
0 commit comments