From 39f6b586cc637b4d58d6bd09a1b8490da66f6caa Mon Sep 17 00:00:00 2001 From: Alex Burgel Date: Thu, 31 Oct 2013 15:02:19 -0400 Subject: [PATCH] Fix crashes on 64bit devices by casting objc_msgSend calls --- SDWebImage/SDWebImageManager.m | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/SDWebImage/SDWebImageManager.m b/SDWebImage/SDWebImageManager.m index ec82ae19..4637105f 100644 --- a/SDWebImage/SDWebImageManager.m +++ b/SDWebImage/SDWebImageManager.m @@ -271,7 +271,7 @@ static SDWebImageManager *instance; } if ([delegate respondsToSelector:@selector(webImageManager:didFinishWithImage:forURL:)]) { - objc_msgSend(delegate, @selector(webImageManager:didFinishWithImage:forURL:), self, image, url); + ((void ( *)(id, SEL, id, id, id))objc_msgSend)(delegate, @selector(webImageManager:didFinishWithImage:forURL:), self, image, url); } if ([delegate respondsToSelector:@selector(webImageManager:didFinishWithImage:forURL:userInfo:)]) { @@ -280,7 +280,7 @@ static SDWebImageManager *instance; { userInfo = nil; } - objc_msgSend(delegate, @selector(webImageManager:didFinishWithImage:forURL:userInfo:), self, image, url, userInfo); + ((void ( *)(id, SEL, id, id, id, id))objc_msgSend)(delegate, @selector(webImageManager:didFinishWithImage:forURL:userInfo:), self, image, url, userInfo); } #if NS_BLOCKS_AVAILABLE if ([info objectForKey:@"success"]) @@ -379,7 +379,7 @@ static SDWebImageManager *instance; if ([delegate respondsToSelector:@selector(webImageManager:didProgressWithPartialImage:forURL:)]) { - objc_msgSend(delegate, @selector(webImageManager:didProgressWithPartialImage:forURL:), self, image, downloader.url); + ((void ( *)(id, SEL, id, id, id))objc_msgSend)(delegate, @selector(webImageManager:didProgressWithPartialImage:forURL:), self, image, downloader.url); } if ([delegate respondsToSelector:@selector(webImageManager:didProgressWithPartialImage:forURL:userInfo:)]) { @@ -388,7 +388,7 @@ static SDWebImageManager *instance; { userInfo = nil; } - objc_msgSend(delegate, @selector(webImageManager:didProgressWithPartialImage:forURL:userInfo:), self, image, downloader.url, userInfo); + ((void ( *)(id, SEL, id, id, id, id))objc_msgSend)(delegate, @selector(webImageManager:didProgressWithPartialImage:forURL:userInfo:), self, image, downloader.url, userInfo); } // Delegate notified. Break out and restart loop found = YES; @@ -430,7 +430,7 @@ static SDWebImageManager *instance; } if ([delegate respondsToSelector:@selector(webImageManager:didFinishWithImage:forURL:)]) { - objc_msgSend(delegate, @selector(webImageManager:didFinishWithImage:forURL:), self, image, downloader.url); + ((void ( *)(id, SEL, id, id, id))objc_msgSend)(delegate, @selector(webImageManager:didFinishWithImage:forURL:), self, image, downloader.url); } if ([delegate respondsToSelector:@selector(webImageManager:didFinishWithImage:forURL:userInfo:)]) { @@ -439,7 +439,7 @@ static SDWebImageManager *instance; { userInfo = nil; } - objc_msgSend(delegate, @selector(webImageManager:didFinishWithImage:forURL:userInfo:), self, image, downloader.url, userInfo); + ((void ( *)(id, SEL, id, id, id, id))objc_msgSend)(delegate, @selector(webImageManager:didFinishWithImage:forURL:userInfo:), self, image, downloader.url, userInfo); } #if NS_BLOCKS_AVAILABLE if ([info objectForKey:@"success"]) @@ -457,7 +457,7 @@ static SDWebImageManager *instance; } if ([delegate respondsToSelector:@selector(webImageManager:didFailWithError:forURL:)]) { - objc_msgSend(delegate, @selector(webImageManager:didFailWithError:forURL:), self, nil, downloader.url); + ((void ( *)(id, SEL, id, id, id))objc_msgSend)(delegate, @selector(webImageManager:didFailWithError:forURL:), self, nil, downloader.url); } if ([delegate respondsToSelector:@selector(webImageManager:didFailWithError:forURL:userInfo:)]) { @@ -466,7 +466,7 @@ static SDWebImageManager *instance; { userInfo = nil; } - objc_msgSend(delegate, @selector(webImageManager:didFailWithError:forURL:userInfo:), self, nil, downloader.url, userInfo); + ((void ( *)(id, SEL, id, id, id, id))objc_msgSend)(delegate, @selector(webImageManager:didFailWithError:forURL:userInfo:), self, nil, downloader.url, userInfo); } #if NS_BLOCKS_AVAILABLE if ([info objectForKey:@"failure"]) @@ -536,7 +536,7 @@ static SDWebImageManager *instance; } if ([delegate respondsToSelector:@selector(webImageManager:didFailWithError:forURL:)]) { - objc_msgSend(delegate, @selector(webImageManager:didFailWithError:forURL:), self, error, downloader.url); + ((void ( *)(id, SEL, id, id, id))objc_msgSend)(delegate, @selector(webImageManager:didFailWithError:forURL:), self, error, downloader.url); } if ([delegate respondsToSelector:@selector(webImageManager:didFailWithError:forURL:userInfo:)]) { @@ -545,7 +545,7 @@ static SDWebImageManager *instance; { userInfo = nil; } - objc_msgSend(delegate, @selector(webImageManager:didFailWithError:forURL:userInfo:), self, error, downloader.url, userInfo); + ((void ( *)(id, SEL, id, id, id, id))objc_msgSend)(delegate, @selector(webImageManager:didFailWithError:forURL:userInfo:), self, error, downloader.url, userInfo); } #if NS_BLOCKS_AVAILABLE if ([info objectForKey:@"failure"])