From 5082f32552b920f49b8decd2623647169fc4d253 Mon Sep 17 00:00:00 2001 From: Matt Ward Date: Thu, 14 Sep 2017 12:29:34 +0100 Subject: [Packaging] Fix UI hang creating new NuGet package project Fixed bug #59461 - UI hang creating packaging project https://bugzilla.xamarin.com/show_bug.cgi?id=59461 The VSTest addin checks the installed NuGet packages for test adapters when a new solution is created. Returning the installed NuGet packages for the packaging project was causing the UI thread to be blocked and caused the IDE to hang. --- .../MonoDevelop.Packaging/PackagingNuGetProject.cs | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) (limited to 'main/src/addins/MonoDevelop.Packaging') diff --git a/main/src/addins/MonoDevelop.Packaging/MonoDevelop.Packaging/PackagingNuGetProject.cs b/main/src/addins/MonoDevelop.Packaging/MonoDevelop.Packaging/PackagingNuGetProject.cs index 6e75e6d494..347bd48c25 100644 --- a/main/src/addins/MonoDevelop.Packaging/MonoDevelop.Packaging/PackagingNuGetProject.cs +++ b/main/src/addins/MonoDevelop.Packaging/MonoDevelop.Packaging/PackagingNuGetProject.cs @@ -55,14 +55,17 @@ namespace MonoDevelop.Packaging InternalMetadata.Add (NuGetProjectMetadataKeys.UniqueName, project.Name); } - public override async Task> GetInstalledPackagesAsync (CancellationToken token) + public override Task> GetInstalledPackagesAsync (CancellationToken token) { - return await Runtime.RunInMainThread (() => { - return project - .PackageReferences - .Select (packageReference => packageReference.ToNuGetPackageReference ()) - .ToList (); - }); + return Task.FromResult (GetPackageReferences ()); + } + + IEnumerable GetPackageReferences () + { + return project + .PackageReferences + .Select (packageReference => packageReference.ToNuGetPackageReference ()) + .ToList (); } public override async Task InstallPackageAsync ( -- cgit v1.2.3