@@ -659,34 +659,42 @@ public async Task<int> AddPackageAsync(FileInfo projectFilePath, string packageN
659
659
}
660
660
661
661
var foundPackages = new List < NuGetPackage > ( ) ;
662
- var document = JsonDocument . Parse ( stdout ) ;
663
-
664
- var searchResultsArray = document . RootElement . GetProperty ( "searchResult" ) ;
665
-
666
- foreach ( var sourceResult in searchResultsArray . EnumerateArray ( ) )
662
+ try
667
663
{
668
- var source = sourceResult . GetProperty ( "sourceName" ) . GetString ( ) ;
669
- var sourcePackagesArray = sourceResult . GetProperty ( "packages" ) ;
670
-
671
- foreach ( var packageResult in sourcePackagesArray . EnumerateArray ( ) )
672
- {
673
- var id = packageResult . GetProperty ( "id" ) . GetString ( ) ;
664
+ using var document = JsonDocument . Parse ( stdout ) ;
674
665
675
- // var version = prerelease switch {
676
- // true => packageResult.GetProperty("version").GetString(),
677
- // false => packageResult.GetProperty("latestVersion").GetString()
678
- // };
666
+ var searchResultsArray = document . RootElement . GetProperty ( "searchResult" ) ;
679
667
680
- var version = packageResult . GetProperty ( "latestVersion" ) . GetString ( ) ;
668
+ foreach ( var sourceResult in searchResultsArray . EnumerateArray ( ) )
669
+ {
670
+ var source = sourceResult . GetProperty ( "sourceName" ) . GetString ( ) ;
671
+ var sourcePackagesArray = sourceResult . GetProperty ( "packages" ) ;
681
672
682
- foundPackages . Add ( new NuGetPackage
673
+ foreach ( var packageResult in sourcePackagesArray . EnumerateArray ( ) )
683
674
{
684
- Id = id ! ,
685
- Version = version ! ,
686
- Source = source !
687
- } ) ;
675
+ var id = packageResult . GetProperty ( "id" ) . GetString ( ) ;
676
+
677
+ // var version = prerelease switch {
678
+ // true => packageResult.GetProperty("version").GetString(),
679
+ // false => packageResult.GetProperty("latestVersion").GetString()
680
+ // };
681
+
682
+ var version = packageResult . GetProperty ( "latestVersion" ) . GetString ( ) ;
683
+
684
+ foundPackages . Add ( new NuGetPackage
685
+ {
686
+ Id = id ! ,
687
+ Version = version ! ,
688
+ Source = source !
689
+ } ) ;
690
+ }
688
691
}
689
692
}
693
+ catch ( JsonException ex )
694
+ {
695
+ logger . LogError ( $ "Failed to read JSON returned by the package search. { ex . Message } ") ;
696
+ return ( ExitCodeConstants . FailedToAddPackage , null ) ;
697
+ }
690
698
691
699
return ( result , foundPackages . ToArray ( ) ) ;
692
700
}
0 commit comments