Merge pull request #612 from Madefire/afhttpclient_no_dealloc
fix for AFHTTPClient not being released
This commit is contained in:
commit
ecac2b3583
1 changed files with 10 additions and 4 deletions
|
|
@ -336,10 +336,16 @@ static void AFNetworkReachabilityReleaseCallback(const void *info) {}
|
||||||
|
|
||||||
self.networkReachability = SCNetworkReachabilityCreateWithName(kCFAllocatorDefault, [[self.baseURL host] UTF8String]);
|
self.networkReachability = SCNetworkReachabilityCreateWithName(kCFAllocatorDefault, [[self.baseURL host] UTF8String]);
|
||||||
|
|
||||||
|
__weak AFHTTPClient *weakSelf = self;
|
||||||
AFNetworkReachabilityStatusBlock callback = ^(AFNetworkReachabilityStatus status){
|
AFNetworkReachabilityStatusBlock callback = ^(AFNetworkReachabilityStatus status){
|
||||||
self.networkReachabilityStatus = status;
|
__strong AFHTTPClient *strongSelf = weakSelf;
|
||||||
if (self.networkReachabilityStatusBlock) {
|
if (!strongSelf) {
|
||||||
self.networkReachabilityStatusBlock(status);
|
// the weak ref is gone, depart this block
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
strongSelf.networkReachabilityStatus = status;
|
||||||
|
if (strongSelf.networkReachabilityStatusBlock) {
|
||||||
|
strongSelf.networkReachabilityStatusBlock(status);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue