diff --git a/Libraries/Image/RCTImageView.m b/Libraries/Image/RCTImageView.m index 6265828de9ef..f8c1f0d8ebe9 100644 --- a/Libraries/Image/RCTImageView.m +++ b/Libraries/Image/RCTImageView.m @@ -347,6 +347,14 @@ - (void)imageLoaderLoadedImage:(UIImage *)loadedImage error:(NSError *)error for } if (error) { + if (_pendingImageSource.request && _imageSource.request && ![_pendingImageSource.request.URL.absoluteString isEqual: _imageSource.request.URL.absoluteString]) { + RCTExecuteOnMainQueue(^{ + [self.layer removeAnimationForKey:@"contents"]; + self.image = loadedImage; + self->_imageSource = source; + self->_pendingImageSource = nil; + }); + } if (_onError) { _onError(@{ @"error": error.localizedDescription }); }