mirror of
				https://github.com/Kopano-dev/kopano-ol-extension.git
				synced 2023-10-10 11:37:40 +00:00 
			
		
		
		
	Small cleanup to folder item iteration
This commit is contained in:
		| @@ -139,11 +139,7 @@ namespace Acacia.Stubs.OutlookWrappers | ||||
|             { | ||||
|                 get | ||||
|                 { | ||||
|                     if (_last != null) | ||||
|                     { | ||||
|                         _last.Dispose(); | ||||
|                         _last = default(ItemType); | ||||
|                     } | ||||
|                     CleanLast(); | ||||
|                     _last = Mapping.Wrap<ItemType>(_enum.Current); | ||||
|                     return _last; | ||||
|                 } | ||||
| @@ -157,12 +153,23 @@ namespace Acacia.Stubs.OutlookWrappers | ||||
|                 } | ||||
|             } | ||||
|  | ||||
|             private void CleanLast() | ||||
|             { | ||||
|                 if (_last != null) | ||||
|                 { | ||||
|                     _last.Dispose(); | ||||
|                     _last = default(ItemType); | ||||
|                 } | ||||
|             } | ||||
|  | ||||
|             public void Dispose() | ||||
|             { | ||||
|                 CleanLast(); | ||||
|                 if (_enum != null) | ||||
|                 { | ||||
|                     if (_enum is IDisposable) | ||||
|                         ((IDisposable)_enum).Dispose(); | ||||
|                     ComRelease.Release(_enum); | ||||
|                     _enum = null; | ||||
|                 } | ||||
|                 if (_items != null) | ||||
| @@ -174,16 +181,13 @@ namespace Acacia.Stubs.OutlookWrappers | ||||
|  | ||||
|             public bool MoveNext() | ||||
|             { | ||||
|                 if (_last != null) | ||||
|                 { | ||||
|                     _last.Dispose(); | ||||
|                     _last = default(ItemType); | ||||
|                 } | ||||
|                 CleanLast(); | ||||
|                 return _enum.MoveNext(); | ||||
|             } | ||||
|  | ||||
|             public void Reset() | ||||
|             { | ||||
|                 CleanLast(); | ||||
|                 _enum.Reset(); | ||||
|             } | ||||
|         } | ||||
|   | ||||
| @@ -59,7 +59,7 @@ namespace Acacia.Utils | ||||
|         { | ||||
|             if (!Enabled) | ||||
|                 return; | ||||
|             if (o == null) | ||||
|             if (o == null || !Marshal.IsComObject(o)) | ||||
|                 return; | ||||
|  | ||||
|             if (Logger.Instance.IsLevelEnabled(LogLevel.TraceExtra)) | ||||
|   | ||||
		Reference in New Issue
	
	Block a user