diff --git a/SDWebImage/UIButton+WebCache.m b/SDWebImage/UIButton+WebCache.m index 33f7c29..5bf6620 100644 --- a/SDWebImage/UIButton+WebCache.m +++ b/SDWebImage/UIButton+WebCache.m @@ -74,7 +74,12 @@ static char imageURLStorageKey; dispatch_main_sync_safe(^{ __strong UIButton *sself = wself; if (!sself) return; - if (image) { + if (image && (options & SDWebImageAvoidAutoSetImage) && completedBlock) + { + completedBlock(image, error, cacheType, url); + return; + } + else if (image) { [sself setImage:image forState:state]; } if (completedBlock && finished) { @@ -117,7 +122,12 @@ static char imageURLStorageKey; dispatch_main_sync_safe(^{ __strong UIButton *sself = wself; if (!sself) return; - if (image) { + if (image && (options & SDWebImageAvoidAutoSetImage) && completedBlock) + { + completedBlock(image, error, cacheType, url); + return; + } + else if (image) { [sself setBackgroundImage:image forState:state]; } if (completedBlock && finished) { diff --git a/SDWebImage/UIImageView+HighlightedWebCache.m b/SDWebImage/UIImageView+HighlightedWebCache.m index eed798f..921134e 100644 --- a/SDWebImage/UIImageView+HighlightedWebCache.m +++ b/SDWebImage/UIImageView+HighlightedWebCache.m @@ -39,7 +39,12 @@ dispatch_main_sync_safe (^ { if (!wself) return; - if (image) { + if (image && (options & SDWebImageAvoidAutoSetImage) && completedBlock) + { + completedBlock(image, error, cacheType, url); + return; + } + else if (image) { wself.highlightedImage = image; [wself setNeedsLayout]; }