diff --git a/src/UniTask/Assets/Plugins/UniTask/Runtime/Linq/Merge.cs b/src/UniTask/Assets/Plugins/UniTask/Runtime/Linq/Merge.cs index d4ea969..b74bf25 100644 --- a/src/UniTask/Assets/Plugins/UniTask/Runtime/Linq/Merge.cs +++ b/src/UniTask/Assets/Plugins/UniTask/Runtime/Linq/Merge.cs @@ -27,7 +27,9 @@ namespace Cysharp.Threading.Tasks.Linq public static IUniTaskAsyncEnumerable Merge(this IEnumerable> sources) { - return new Merge(sources.ToArray()); + return sources is IUniTaskAsyncEnumerable[] array + ? new Merge(array) + : new Merge(sources.ToArray()); } public static IUniTaskAsyncEnumerable Merge(params IUniTaskAsyncEnumerable[] sources)