Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/monodevelop.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Krüger <mkrueger@xamarin.com>2016-04-13 13:23:05 +0300
committerMike Krüger <mkrueger@xamarin.com>2016-04-13 13:23:26 +0300
commitca9791ce7e0be1ccceecc955591b7d2006a2c12c (patch)
tree037439e6fb2d6603e78fea78eaf511fcc7dc6cca /main/src/addins/MonoDevelop.AssemblyBrowser
parent1f1f5932ecf55d47eeba35854ea6f5afd7fd8f7a (diff)
Fixed 'Bug 40316 - [Cycle 7]User is not able to Search dll in Assembly
Browser.' widget.CecilLoader.LoadAssembly isn.t thread safe so it needs to run on the main thread.
Diffstat (limited to 'main/src/addins/MonoDevelop.AssemblyBrowser')
-rw-r--r--main/src/addins/MonoDevelop.AssemblyBrowser/MonoDevelop.AssemblyBrowser/AssemblyLoader.cs6
1 files changed, 4 insertions, 2 deletions
diff --git a/main/src/addins/MonoDevelop.AssemblyBrowser/MonoDevelop.AssemblyBrowser/AssemblyLoader.cs b/main/src/addins/MonoDevelop.AssemblyBrowser/MonoDevelop.AssemblyBrowser/AssemblyLoader.cs
index ff807c4658..58f80337fa 100644
--- a/main/src/addins/MonoDevelop.AssemblyBrowser/MonoDevelop.AssemblyBrowser/AssemblyLoader.cs
+++ b/main/src/addins/MonoDevelop.AssemblyBrowser/MonoDevelop.AssemblyBrowser/AssemblyLoader.cs
@@ -76,12 +76,14 @@ namespace MonoDevelop.AssemblyBrowser
FileName = fileName;
if (!File.Exists (fileName))
throw new ArgumentException ("File doesn't exist.", nameof (fileName));
- assemblyLoaderTask = Task.Run (() => {
+ assemblyLoaderTask = Task.Run (async () => {
try {
var asm = AssemblyDefinition.ReadAssembly (FileName, new ReaderParameters {
AssemblyResolver = this
});
- return Tuple.Create (asm, widget.CecilLoader.LoadAssembly (asm));
+ var loadedAssembley = await Runtime.RunInMainThread (() => widget.CecilLoader.LoadAssembly (asm));
+
+ return Tuple.Create (asm, loadedAssembley);
} catch (Exception e) {
LoggingService.LogError ("Error while reading assembly " + FileName, e);
return null;