Remove range and sample position from avifImageStealPlanes(), transfer alphaRange manually
Fixes: #281
diff --git a/src/avif.c b/src/avif.c
index 23d278a..969accc 100644
--- a/src/avif.c
+++ b/src/avif.c
@@ -295,15 +295,12 @@
srcImage->yuvRowBytes[AVIF_CHAN_V] = 0;
dstImage->yuvFormat = srcImage->yuvFormat;
- dstImage->yuvRange = srcImage->yuvRange;
- dstImage->yuvChromaSamplePosition = srcImage->yuvChromaSamplePosition;
dstImage->imageOwnsYUVPlanes = srcImage->imageOwnsYUVPlanes;
srcImage->imageOwnsYUVPlanes = AVIF_FALSE;
}
if (planes & AVIF_PLANES_A) {
dstImage->alphaPlane = srcImage->alphaPlane;
dstImage->alphaRowBytes = srcImage->alphaRowBytes;
- dstImage->alphaRange = srcImage->alphaRange;
srcImage->alphaPlane = NULL;
srcImage->alphaRowBytes = 0;
diff --git a/src/read.c b/src/read.c
index ccc02d0..97246ce 100644
--- a/src/read.c
+++ b/src/read.c
@@ -2518,6 +2518,7 @@
}
avifImageStealPlanes(decoder->image, srcAlpha, AVIF_PLANES_A);
+ decoder->image->alphaRange = srcAlpha->alphaRange;
}
}