Fix race condition in UIImageView+AFNetworking

This commit is contained in:
Peyman 2013-01-07 16:03:33 -08:00
parent ba9185ded2
commit b337828e96

View file

@ -119,8 +119,10 @@ static char kAFImageRequestOperationObjectKey;
} else { } else {
self.image = responseObject; self.image = responseObject;
} }
self.af_imageRequestOperation = nil; if (self.af_imageRequestOperation == operation) {
self.af_imageRequestOperation = nil;
}
} }
[[[self class] af_sharedImageCache] cacheImage:responseObject forRequest:urlRequest]; [[[self class] af_sharedImageCache] cacheImage:responseObject forRequest:urlRequest];
@ -129,13 +131,15 @@ static char kAFImageRequestOperationObjectKey;
if (failure) { if (failure) {
failure(operation.request, operation.response, error); failure(operation.request, operation.response, error);
} }
self.af_imageRequestOperation = nil; if (self.af_imageRequestOperation == operation) {
self.af_imageRequestOperation = nil;
}
} }
}]; }];
self.af_imageRequestOperation = requestOperation; self.af_imageRequestOperation = requestOperation;
[[[self class] af_sharedImageRequestOperationQueue] addOperation:self.af_imageRequestOperation]; [[[self class] af_sharedImageRequestOperationQueue] addOperation:self.af_imageRequestOperation];
} }
} }