Mercurial > pub > ImplabNet
comparison Implab/Safe.cs @ 238:bdfdba6b645b v2
fixed unpredictable Safe.Dispose behaviour
| author | cin | 
|---|---|
| date | Fri, 01 Dec 2017 01:28:56 +0300 | 
| parents | 6fa235c5a760 | 
| children | 5cb4826c2c2a | 
   comparison
  equal
  deleted
  inserted
  replaced
| 237:f2150c16b476 | 238:bdfdba6b645b | 
|---|---|
| 88 foreach (var d in objects) | 88 foreach (var d in objects) | 
| 89 Dispose(d); | 89 Dispose(d); | 
| 90 } | 90 } | 
| 91 | 91 | 
| 92 public static void Dispose(object obj) { | 92 public static void Dispose(object obj) { | 
| 93 if (obj is IDisposable) { | 93 if (obj is IDisposable) | 
| 94 Dispose((IDisposable)obj); | 94 Dispose((IDisposable)obj); | 
| 95 } else if (obj is IEnumerable) { | 95 | 
| 96 DisposeCollection((IEnumerable)obj); | |
| 97 } | |
| 98 } | 96 } | 
| 99 | 97 | 
| 100 [DebuggerStepThrough] | 98 [DebuggerStepThrough] | 
| 101 public static void DispatchEvent<T>(this EventHandler<T> handler, object sender, T args) { | 99 public static void DispatchEvent<T>(this EventHandler<T> handler, object sender, T args) { | 
| 102 if (handler != null) | 100 if (handler != null) | 
