diff options
Diffstat (limited to 'main')
-rw-r--r-- | main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MSBuild/RemoteProjectBuilder.cs | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MSBuild/RemoteProjectBuilder.cs b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MSBuild/RemoteProjectBuilder.cs index 97c78beec2..1e08a4e2a5 100644 --- a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MSBuild/RemoteProjectBuilder.cs +++ b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MSBuild/RemoteProjectBuilder.cs @@ -289,10 +289,13 @@ namespace MonoDevelop.Projects.Formats.MSBuild MSBuildResult result; try { BeginOperation (); - result = builder.Run ( - configurations, null, MSBuildVerbosity.Normal, - new [] { "ResolveAssemblyReferences" }, new [] { "ReferencePath" }, null, null, taskId - ); + lock (engine) { + // FIXME: This lock should not be necessary, but remoting seems to have problems when doing many concurrent calls. + result = builder.Run ( + configurations, null, MSBuildVerbosity.Normal, + new [] { "ResolveAssemblyReferences" }, new [] { "ReferencePath" }, null, null, taskId + ); + } } catch (Exception ex) { CheckDisconnected (); LoggingService.LogError ("ResolveAssemblyReferences failed", ex); |