Updated IEnumFromCom to support intialized (new) items so it covers structures and classes.

pull/267/head
dahall 2021-12-20 10:51:04 -07:00
parent 1f6085122f
commit 8a2335ea21
1 changed files with 2 additions and 2 deletions

View File

@ -49,7 +49,7 @@ namespace Vanara.Collections
/// if a class doesn't support <see cref="IEnumerable"/> or <see cref="IEnumerable{T}"/> like some COM objects. /// if a class doesn't support <see cref="IEnumerable"/> or <see cref="IEnumerable{T}"/> like some COM objects.
/// </summary> /// </summary>
/// <typeparam name="TItem">The type of the item.</typeparam> /// <typeparam name="TItem">The type of the item.</typeparam>
public class IEnumFromCom<TItem> : IEnumFromNext<TItem> public class IEnumFromCom<TItem> : IEnumFromNext<TItem> where TItem : new()
{ {
private readonly ComTryGetNext cnext; private readonly ComTryGetNext cnext;
@ -90,7 +90,7 @@ namespace Vanara.Collections
private bool TryGet(out TItem item) private bool TryGet(out TItem item)
{ {
var res = new TItem[1]; var res = new TItem[] { new TItem() };
item = default; item = default;
if (cnext(1, res, out var ret) != HRESULT.S_OK) if (cnext(1, res, out var ret) != HRESULT.S_OK)
return false; return false;