@@ -276,15 +276,14 @@ protected virtual void DownloadTool(
276
276
CreateAssetFile ( packageId , packageVersion , packageDownloadDir , Path . Combine ( assetFileDirectory . Value , ToolPackageInstance . AssetsFileName ) , _runtimeJsonPath , targetFramework ) ;
277
277
278
278
// Also download RID-specific package if needed
279
- var ridSpecificPackage = ResolveRidSpecificPackage ( packageId , packageVersion , packageDownloadDir , assetFileDirectory ) ;
280
- if ( ridSpecificPackage != null )
279
+ if ( ResolveRidSpecificPackage ( packageId , packageVersion , packageDownloadDir , assetFileDirectory ) is PackageId ridSpecificPackage )
281
280
{
282
- if ( ! IsPackageInstalled ( new PackageId ( ridSpecificPackage . Id ) , ridSpecificPackage . Version , packageDownloadDir . Value ) )
281
+ if ( ! IsPackageInstalled ( ridSpecificPackage , packageVersion , packageDownloadDir . Value ) )
283
282
{
284
- DownloadAndExtractPackage ( new PackageId ( ridSpecificPackage . Id ) , nugetPackageDownloader , packageDownloadDir . Value , ridSpecificPackage . Version , packageSourceLocation , includeUnlisted : true ) ;
283
+ DownloadAndExtractPackage ( ridSpecificPackage , nugetPackageDownloader , packageDownloadDir . Value , packageVersion , packageSourceLocation , includeUnlisted : true ) ;
285
284
}
286
285
287
- CreateAssetFile ( new PackageId ( ridSpecificPackage . Id ) , ridSpecificPackage . Version , packageDownloadDir , Path . Combine ( assetFileDirectory . Value , ToolPackageInstance . RidSpecificPackageAssetsFileName ) , _runtimeJsonPath , targetFramework ) ;
286
+ CreateAssetFile ( ridSpecificPackage , packageVersion , packageDownloadDir , Path . Combine ( assetFileDirectory . Value , ToolPackageInstance . RidSpecificPackageAssetsFileName ) , _runtimeJsonPath , targetFramework ) ;
288
287
}
289
288
}
290
289
@@ -301,15 +300,14 @@ public bool TryGetDownloadedTool(
301
300
}
302
301
CreateAssetFile ( packageId , packageVersion , _localToolDownloadDir , Path . Combine ( _localToolAssetDir . Value , ToolPackageInstance . AssetsFileName ) , _runtimeJsonPath , targetFramework ) ;
303
302
304
- var ridSpecificPackage = ResolveRidSpecificPackage ( packageId , packageVersion , _localToolDownloadDir , _localToolAssetDir ) ;
305
- if ( ridSpecificPackage != null )
303
+ if ( ResolveRidSpecificPackage ( packageId , packageVersion , _localToolDownloadDir , _localToolAssetDir ) is PackageId ridSpecificPackage )
306
304
{
307
- if ( ! IsPackageInstalled ( new PackageId ( ridSpecificPackage . Id ) , ridSpecificPackage . Version , _localToolDownloadDir . Value ) )
305
+ if ( ! IsPackageInstalled ( ridSpecificPackage , packageVersion , _localToolDownloadDir . Value ) )
308
306
{
309
307
toolPackage = null ;
310
308
return false ;
311
309
}
312
- CreateAssetFile ( new PackageId ( ridSpecificPackage . Id ) , ridSpecificPackage . Version , _localToolDownloadDir ,
310
+ CreateAssetFile ( ridSpecificPackage , packageVersion , _localToolDownloadDir ,
313
311
Path . Combine ( _localToolAssetDir . Value , ToolPackageInstance . RidSpecificPackageAssetsFileName ) , _runtimeJsonPath , targetFramework ) ;
314
312
}
315
313
@@ -322,7 +320,7 @@ public bool TryGetDownloadedTool(
322
320
323
321
}
324
322
325
- private PackageIdentity ? ResolveRidSpecificPackage ( PackageId packageId ,
323
+ private PackageId ? ResolveRidSpecificPackage ( PackageId packageId ,
326
324
NuGetVersion packageVersion ,
327
325
DirectoryPath packageDownloadDir ,
328
326
DirectoryPath assetFileDirectory )
@@ -341,7 +339,11 @@ public bool TryGetDownloadedTool(
341
339
342
340
var resolvedPackage = toolConfiguration . RidSpecificPackages [ bestRuntimeIdentifier ] ;
343
341
344
- return resolvedPackage ;
342
+ if ( resolvedPackage is PackageIdentity p )
343
+ {
344
+ return new PackageId ( p . Id ) ;
345
+ }
346
+ return null ;
345
347
}
346
348
347
349
return null ;
0 commit comments