Skip to content

Commit f8bd0c0

Browse files
authored
Merge pull request #3844 from CloudlessMoon/master
Switched image encoding to a context-aware approach with a safe fallback, allowing per-request encoder selection without changing the public API.
2 parents 34cf242 + b4c51fe commit f8bd0c0

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

SDWebImage/Core/SDImageCache.m

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -279,7 +279,11 @@ - (void)storeImage:(nullable UIImage *)image
279279
format = [SDImageCoderHelper CGImageContainsAlpha:image.CGImage] ? SDImageFormatPNG : SDImageFormatJPEG;
280280
}
281281
}
282-
NSData *encodedData = [[SDImageCodersManager sharedManager] encodedDataWithImage:image format:format options:context[SDWebImageContextImageEncodeOptions]];
282+
id<SDImageCoder> imageCoder = context[SDWebImageContextImageCoder];
283+
if (!imageCoder) {
284+
imageCoder = [SDImageCodersManager sharedManager];
285+
}
286+
NSData *encodedData = [imageCoder encodedDataWithImage:image format:format options:context[SDWebImageContextImageEncodeOptions]];
283287
dispatch_async(self.ioQueue, ^{
284288
[self _storeImageDataToDisk:encodedData forKey:key];
285289
[self _archivedDataWithImage:image forKey:key];

0 commit comments

Comments
 (0)