Rookie mistake, always sync the pixel cache
diff --git a/MagickCore/quantize.c b/MagickCore/quantize.c index e96f7e5..a25d22d 100644 --- a/MagickCore/quantize.c +++ b/MagickCore/quantize.c
@@ -2575,7 +2575,14 @@ SetPixelIndex(image,(Quantum) j,q); q+=GetPixelChannels(image); } + if (SyncCacheViewAuthenticPixels(image_view,exception) == MagickFalse) + { + status=MagickFalse; + break; + } } + if (status == MagickFalse) + break; /* Calculate the new means (centroids) of the pixels in the new clusters. */