diff --git a/Implab/Components/ServiceLocator.cs b/Implab/Components/ServiceLocator.cs --- a/Implab/Components/ServiceLocator.cs +++ b/Implab/Components/ServiceLocator.cs @@ -7,7 +7,7 @@ namespace Implab.Components { /// public class ServiceLocator: Disposable, IServiceLocator, IServiceProvider { // запись о сервисе - struct ServiceEntry : IDisposable { + class ServiceEntry : IDisposable { public object service; // сервис public bool shared; // признак того, что сервис НЕ нужно освобождать public Func activator; // активатор сервиса при первом обращении diff --git a/Implab/Safe.cs b/Implab/Safe.cs --- a/Implab/Safe.cs +++ b/Implab/Safe.cs @@ -90,11 +90,9 @@ namespace Implab } public static void Dispose(object obj) { - if (obj is IDisposable) { + if (obj is IDisposable) Dispose((IDisposable)obj); - } else if (obj is IEnumerable) { - DisposeCollection((IEnumerable)obj); - } + } [DebuggerStepThrough]