diff --git a/src/ImageSharp/Formats/WebP/Lossless/BackwardReferenceEncoder.cs b/src/ImageSharp/Formats/WebP/Lossless/BackwardReferenceEncoder.cs index 9b7e163899..f5f713fe1a 100644 --- a/src/ImageSharp/Formats/WebP/Lossless/BackwardReferenceEncoder.cs +++ b/src/ImageSharp/Formats/WebP/Lossless/BackwardReferenceEncoder.cs @@ -138,12 +138,10 @@ namespace SixLabors.ImageSharp.Formats.Experimental.Webp.Lossless colorCache[i].Init(i); } - // TODO: Don't use the enumerator here. // Find the cacheBits giving the lowest entropy. - using List.Enumerator c = refs.Refs.GetEnumerator(); - while (c.MoveNext()) + for (int idx = 0; idx < refs.Refs.Count; idx++) { - PixOrCopy v = c.Current; + PixOrCopy v = refs.Refs[idx]; if (v.IsLiteral()) { uint pix = bgra[pos++]; @@ -743,14 +741,12 @@ namespace SixLabors.ImageSharp.Formats.Experimental.Webp.Lossless /// private static void BackwardRefsWithLocalCache(Span bgra, int cacheBits, Vp8LBackwardRefs refs) { - // TODO: Don't use enumerator. int pixelIndex = 0; - using List.Enumerator c = refs.Refs.GetEnumerator(); var colorCache = new ColorCache(); colorCache.Init(cacheBits); - while (c.MoveNext()) + for (int idx = 0; idx < refs.Refs.Count; idx++) { - PixOrCopy v = c.Current; + PixOrCopy v = refs.Refs[idx]; if (v.IsLiteral()) { uint bgraLiteral = v.BgraOrDistance;