File tree Expand file tree Collapse file tree 1 file changed +14
-6
lines changed
Sources/RemoteImage/public/Services Expand file tree Collapse file tree 1 file changed +14
-6
lines changed Original file line number Diff line number Diff line change @@ -55,18 +55,26 @@ private extension RemoteImageService {
5555 cancellable = dependencies. remoteImageURLDataPublisher. dataPublisher ( for: urlRequest)
5656 . map { UIImage ( data: $0. data) }
5757 . receive ( on: RunLoop . main)
58- . sink ( receiveCompletion: { completion in
58+ . sink ( receiveCompletion: { [ weak self] completion in
59+ guard let weakSelf = self else {
60+ return
61+ }
62+
5963 switch completion {
6064 case . failure( let error) :
61- self . state = . error( error as NSError )
62- default : ( )
65+ weakSelf. state = . error( error as NSError )
66+ case . finished: ( )
67+ }
68+ } ) { [ weak self] image in
69+ guard let weakSelf = self else {
70+ return
6371 }
64- } ) { image in
72+
6573 if let image = image {
6674 Self . cache. setObject ( image, forKey: cacheKey)
67- self . state = . image( image)
75+ weakSelf . state = . image( image)
6876 } else {
69- self . state = . error( RemoteImageServiceError . couldNotCreateImage as NSError )
77+ weakSelf . state = . error( RemoteImageServiceError . couldNotCreateImage as NSError )
7078 }
7179 }
7280 }
You can’t perform that action at this time.
0 commit comments