Skip to content

Commit 77fd1af

Browse files
committed
Scale alpha planes [0, (1 << bit-depth) - 1] to [0, 65536]
1 parent 31dcb64 commit 77fd1af

File tree

1 file changed

+10
-2
lines changed

1 file changed

+10
-2
lines changed

SDWebImageAVIFCoder/Classes/SDImageAVIFCoder.m

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -225,8 +225,12 @@ static void CalcColorSpaceMono(avifImage * avif, CGColorSpaceRef* ref, BOOL* sho
225225
if(@available(macOS 10.12, iOS 10.0, tvOS 10.0, *)) {
226226
*ref = CGColorSpaceCreateWithICCData(avif->icc.data);
227227
*shouldRelease = TRUE;
228-
return;
228+
}else{
229+
CFDataRef iccData = CFDataCreateWithBytesNoCopy(NULL, avif->icc.data, avif->icc.size, NULL);
230+
*ref = CGColorSpaceCreateWithICCProfile(iccData);
231+
*shouldRelease = TRUE;
229232
}
233+
return;
230234
}
231235
*ref = defaultColorSpace;
232236
*shouldRelease = FALSE;
@@ -327,8 +331,12 @@ static void CalcColorSpaceRGB(avifImage * avif, CGColorSpaceRef* ref, BOOL* shou
327331
if(@available(macOS 10.12, iOS 10.0, tvOS 10.0, *)) {
328332
*ref = CGColorSpaceCreateWithICCData(avif->icc.data);
329333
*shouldRelease = TRUE;
330-
return;
334+
}else{
335+
CFDataRef iccData = CFDataCreateWithBytesNoCopy(NULL, avif->icc.data, avif->icc.size, NULL);
336+
*ref = CGColorSpaceCreateWithICCProfile(iccData);
337+
*shouldRelease = TRUE;
331338
}
339+
return;
332340
}
333341
*ref = defaultColorSpace;
334342
*shouldRelease = FALSE;

0 commit comments

Comments
 (0)