Browse Source

Dont use enumerator

pull/1552/head
Brian Popow 5 years ago
parent
commit
6678fba0c2
  1. 12
      src/ImageSharp/Formats/WebP/Lossless/BackwardReferenceEncoder.cs

12
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<PixOrCopy>.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
/// </summary>
private static void BackwardRefsWithLocalCache(Span<uint> bgra, int cacheBits, Vp8LBackwardRefs refs)
{
// TODO: Don't use enumerator.
int pixelIndex = 0;
using List<PixOrCopy>.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;

Loading…
Cancel
Save