diff options
author | therzok <marius.ungureanu@xamarin.com> | 2019-07-23 13:05:45 +0300 |
---|---|---|
committer | therzok <marius.ungureanu@xamarin.com> | 2019-07-23 13:05:45 +0300 |
commit | 28607ee2be3951fba85ff5b49fd5d65bda1ee798 (patch) | |
tree | d1e305fb6d988a6e67a9bd9dec7cd61988eb2f64 /main/src | |
parent | 0dca94e3cd066b0d6a09a93b4edc932089e33a3f (diff) |
[Core] CreateSolutionItem should be ConfigureAwait(false)
Accidentally capturing the UI context can cause an UI thread.
Diffstat (limited to 'main/src')
-rw-r--r-- | main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Extensions/ProjectTypeNode.cs | 6 | ||||
-rw-r--r-- | main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Extensions/SolutionItemTypeNode.cs | 2 |
2 files changed, 4 insertions, 4 deletions
diff --git a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Extensions/ProjectTypeNode.cs b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Extensions/ProjectTypeNode.cs index 18d9d0e167..13d5beeaae 100644 --- a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Extensions/ProjectTypeNode.cs +++ b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Extensions/ProjectTypeNode.cs @@ -45,7 +45,7 @@ namespace MonoDevelop.Projects.Extensions Project project = null; if (!string.IsNullOrEmpty (fileName)) { - p = await MSBuildProject.LoadAsync (fileName); + p = await MSBuildProject.LoadAsync (fileName).ConfigureAwait (false); if (ctx != null && ctx.Solution != null) { p.EngineManager = ctx.Solution.MSBuildEngineManager; p.SolutionDirectory = ctx.Solution.ItemDirectory; @@ -53,7 +53,7 @@ namespace MonoDevelop.Projects.Extensions var migrators = MSBuildProjectService.GetMigrableFlavors (p.ProjectTypeGuids); if (migrators.Count > 0) - await MSBuildProjectService.MigrateFlavors (monitor, fileName, Guid, p, migrators); + await MSBuildProjectService.MigrateFlavors (monitor, fileName, Guid, p, migrators).ConfigureAwait (false); var unsupporedFlavor = p.ProjectTypeGuids.FirstOrDefault (fid => !MSBuildProjectService.IsKnownFlavorGuid (fid) && !MSBuildProjectService.IsKnownTypeGuid (fid)); if (unsupporedFlavor != null) { @@ -72,7 +72,7 @@ namespace MonoDevelop.Projects.Extensions } if (project == null) - project = await base.CreateSolutionItem (monitor, ctx, fileName) as Project; + project = await base.CreateSolutionItem (monitor, ctx, fileName).ConfigureAwait(false) as Project; if (project == null) throw new InvalidOperationException ("Project node type is not a subclass of MonoDevelop.Projects.Project"); diff --git a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Extensions/SolutionItemTypeNode.cs b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Extensions/SolutionItemTypeNode.cs index 46fa87c880..3cd16adde0 100644 --- a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Extensions/SolutionItemTypeNode.cs +++ b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Extensions/SolutionItemTypeNode.cs @@ -99,7 +99,7 @@ namespace MonoDevelop.Projects.Extensions if (typeof(SolutionItemFactory).IsAssignableFrom (ItemType)) { if (factory == null) factory = (SolutionItemFactory)Activator.CreateInstance (ItemType); - item = await factory.CreateItem (fileName, Guid); + item = await factory.CreateItem (fileName, Guid).ConfigureAwait (false); } else item = MSBuildProjectService.CreateUninitializedInstance (ItemType); |