diff options
author | therzok <marius.ungureanu@xamarin.com> | 2019-11-26 19:26:17 +0300 |
---|---|---|
committer | monojenkins <jo.shields+jenkins@xamarin.com> | 2019-12-03 11:54:19 +0300 |
commit | b963e668556299bdef30a693b16c5eb20620db31 (patch) | |
tree | 727f71cd1ce7a90b0d18dd25a90dc0217323f67e /main | |
parent | 56eed1d490a514f5e30abb3b584a02945e6eaac5 (diff) |
[Ide] Load AddinManager data on the UI thread.
We need to run this on the UI thread since AddinManager is not thread safe.
Invoking extension changed handlers on non-UI thread can lead to weird results
Fixes VSTS #1027414 - [FATAL] SigTerm signal in Mono.Addins.dll!Mono.Addins.RuntimeAddin::LoadModule+82"
Diffstat (limited to 'main')
-rw-r--r-- | main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Composition/CompositionManager.cs | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Composition/CompositionManager.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Composition/CompositionManager.cs index ef092bf165..502c2a4020 100644 --- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Composition/CompositionManager.cs +++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Composition/CompositionManager.cs @@ -124,7 +124,7 @@ namespace MonoDevelop.Ide.Composition var fullTimer = System.Diagnostics.Stopwatch.StartNew ();
var stepTimer = System.Diagnostics.Stopwatch.StartNew ();
- var mefAssemblies = ReadAssembliesFromAddins (timer);
+ var mefAssemblies = await Runtime.RunInMainThread (() => ReadAssembliesFromAddins (timer)); timings ["ReadFromAddins"] = stepTimer.ElapsedMilliseconds;
stepTimer.Restart ();
|