@@ -1477,14 +1477,18 @@ ${contents}
14771477 const prNumber = await vscode . window . showInputBox ( {
14781478 ignoreFocusOut : true , prompt : vscode . l10n . t ( 'Enter the pull request number or URL' ) ,
14791479 validateInput : ( input : string ) => {
1480+ const prNumberMatcher = / ^ # ? ( \d * ) $ / ;
14801481 const numberMatches = input . match ( prNumberMatcher ) ;
14811482 if ( numberMatches && ( numberMatches . length === 2 ) && ! Number . isNaN ( Number ( numberMatches [ 1 ] ) ) ) {
1482- return undefined ; // Valid number
1483+ const num = Number ( numberMatches [ 1 ] ) ;
1484+ if ( num > 0 ) {
1485+ return undefined ; // Valid number
1486+ }
14831487 }
14841488
14851489 const urlMatches = input . match ( ISSUE_OR_URL_EXPRESSION ) ;
14861490 const parsed = parseIssueExpressionOutput ( urlMatches ) ;
1487- if ( parsed && parsed . issueNumber ) {
1491+ if ( parsed && parsed . issueNumber && parsed . issueNumber > 0 ) {
14881492 return undefined ; // Valid URL
14891493 }
14901494
@@ -1499,11 +1503,16 @@ ${contents}
14991503 let extractedPrNumber : number ;
15001504 const numberMatches = prNumber . match ( prNumberMatcher ) ;
15011505 if ( numberMatches && ( numberMatches . length === 2 ) && ! Number . isNaN ( Number ( numberMatches [ 1 ] ) ) ) {
1502- extractedPrNumber = Number ( numberMatches [ 1 ] ) ;
1506+ const num = Number ( numberMatches [ 1 ] ) ;
1507+ if ( num > 0 ) {
1508+ extractedPrNumber = num ;
1509+ } else {
1510+ return vscode . window . showErrorMessage ( vscode . l10n . t ( 'Invalid pull request number or URL' ) ) ;
1511+ }
15031512 } else {
15041513 const urlMatches = prNumber . match ( ISSUE_OR_URL_EXPRESSION ) ;
15051514 const parsed = parseIssueExpressionOutput ( urlMatches ) ;
1506- if ( ! parsed || ! parsed . issueNumber ) {
1515+ if ( ! parsed || ! parsed . issueNumber || parsed . issueNumber <= 0 ) {
15071516 return vscode . window . showErrorMessage ( vscode . l10n . t ( 'Invalid pull request number or URL' ) ) ;
15081517 }
15091518 extractedPrNumber = parsed . issueNumber ;
0 commit comments