From ef0cb8190912d14336ff8e5df10241bff573995a Mon Sep 17 00:00:00 2001 From: Evan Long Date: Tue, 30 Aug 2011 22:36:24 -0700 Subject: [PATCH] Ok, making the entire reading and increment atomic. --- .../AFNetworkActivityIndicatorManager.m | 22 ++++++++++--------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/AFNetworking/AFNetworkActivityIndicatorManager.m b/AFNetworking/AFNetworkActivityIndicatorManager.m index e8db21e..17f4d18 100644 --- a/AFNetworking/AFNetworkActivityIndicatorManager.m +++ b/AFNetworking/AFNetworkActivityIndicatorManager.m @@ -23,7 +23,7 @@ #import "AFNetworkActivityIndicatorManager.h" @interface AFNetworkActivityIndicatorManager () -@property (readwrite, assign) NSInteger activityCount; +@property (readwrite, nonatomic, assign) NSInteger activityCount; @end @implementation AFNetworkActivityIndicatorManager @@ -40,21 +40,23 @@ } - (void)setActivityCount:(NSInteger)activityCount { - @synchronized(self) { - [self willChangeValueForKey:@"activityCount"]; - _activityCount = MAX(activityCount, 0); - [self didChangeValueForKey:@"activityCount"]; - - [[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:self.activityCount > 0]; - } + [self willChangeValueForKey:@"activityCount"]; + _activityCount = MAX(activityCount, 0); + [self didChangeValueForKey:@"activityCount"]; + + [[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:self.activityCount > 0]; } - (void)startAnimating { - self.activityCount += 1; + @synchronized(self) { + self.activityCount += 1; + } } - (void)stopAnimating { - self.activityCount -= 1; + @synchronized(self) { + self.activityCount -= 1; + } } @end