Browse Source

Fix deadlock when installing HttpClient NuGet package.

pull/326/merge
Matt Ward 12 years ago
parent
commit
5eb1699c3a
  1. 10
      src/AddIns/Misc/PackageManagement/Project/Src/Scripting/GlobalMSBuildProjectCollection.cs

10
src/AddIns/Misc/PackageManagement/Project/Src/Scripting/GlobalMSBuildProjectCollection.cs

@ -20,6 +20,7 @@ using System; @@ -20,6 +20,7 @@ using System;
using System.Collections.Generic;
using System.Linq;
using ICSharpCode.SharpDevelop;
using ICSharpCode.SharpDevelop.Project;
using Microsoft.Build.Evaluation;
using NuGet;
@ -69,12 +70,17 @@ namespace ICSharpCode.PackageManagement.Scripting @@ -69,12 +70,17 @@ namespace ICSharpCode.PackageManagement.Scripting
public void Dispose()
{
foreach (GlobalAndInternalProject msbuildProjects in projects) {
UpdateImports(msbuildProjects);
UpdateProperties(msbuildProjects);
SD.MainThread.InvokeIfRequired(() => UpdateProject(msbuildProjects));
GetGlobalProjectCollection().UnloadProject(msbuildProjects.GlobalMSBuildProject);
}
}
void UpdateProject(GlobalAndInternalProject msbuildProjects)
{
UpdateImports(msbuildProjects);
UpdateProperties(msbuildProjects);
}
void UpdateImports(GlobalAndInternalProject msbuildProjects)
{
if (!msbuildProjects.HasGlobalMSBuildProjectImportsChanged()) {

Loading…
Cancel
Save