diff options
| author | Bond-009 <bond.009@outlook.com> | 2019-04-20 12:18:44 +0200 |
|---|---|---|
| committer | Bond-009 <bond.009@outlook.com> | 2019-04-20 17:47:11 +0200 |
| commit | f62af07381b633d8e7ddf5787d9048fbbf4e3c85 (patch) | |
| tree | 29dec7218bc27cd454b6754421156baf2d71208f /Emby.Server.Implementations | |
| parent | 46c37c0ae8d5b5de02ff6f8208a7b91436f54237 (diff) | |
Handle exception when loading unsupported assembly
Fixes #1256
Diffstat (limited to 'Emby.Server.Implementations')
| -rw-r--r-- | Emby.Server.Implementations/ApplicationHost.cs | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/Emby.Server.Implementations/ApplicationHost.cs b/Emby.Server.Implementations/ApplicationHost.cs index 82042f5ca..0295f1098 100644 --- a/Emby.Server.Implementations/ApplicationHost.cs +++ b/Emby.Server.Implementations/ApplicationHost.cs @@ -1167,7 +1167,7 @@ namespace Emby.Server.Implementations } catch (Exception ex) { - Logger.LogError(ex, "Error loading plugin {pluginName}", plugin.GetType().FullName); + Logger.LogError(ex, "Error loading plugin {PluginName}", plugin.GetType().FullName); return null; } @@ -1348,8 +1348,19 @@ namespace Emby.Server.Implementations { foreach (var file in Directory.EnumerateFiles(ApplicationPaths.PluginsPath, "*.dll", SearchOption.AllDirectories)) { - Logger.LogInformation("Loading assembly {Path}", file); - yield return Assembly.LoadFrom(file); + Assembly plugAss; + try + { + plugAss = Assembly.LoadFrom(file); + } + catch (TypeLoadException ex) + { + Logger.LogError(ex, "Failed to load assembly {Path}", file); + continue; + } + + Logger.LogInformation("Loaded assembly {Assembly} from {Path}", plugAss.FullName, file); + yield return plugAss; } } |
