Committed by
Ben Copsey
Corrected version of adding our own isCancelled method.
Showing
1 changed file
with
6 additions
and
12 deletions
@@ -515,16 +515,7 @@ static NSOperationQueue *sharedQueue = nil; | @@ -515,16 +515,7 @@ static NSOperationQueue *sharedQueue = nil; | ||
515 | 515 | ||
516 | [[self cancelledLock] lock]; | 516 | [[self cancelledLock] lock]; |
517 | 517 | ||
518 | - if (cancelled) { | 518 | + if ([self isCancelled] || [self complete]) { |
519 | - [[self cancelledLock] unlock]; | ||
520 | - return; | ||
521 | - } | ||
522 | - | ||
523 | - [self willChangeValueForKey:@"isCancelled"]; | ||
524 | - cancelled = YES; | ||
525 | - [self didChangeValueForKey:@"isCancelled"]; | ||
526 | - | ||
527 | - if ([self complete]) { | ||
528 | [[self cancelledLock] unlock]; | 519 | [[self cancelledLock] unlock]; |
529 | return; | 520 | return; |
530 | } | 521 | } |
@@ -533,7 +524,10 @@ static NSOperationQueue *sharedQueue = nil; | @@ -533,7 +524,10 @@ static NSOperationQueue *sharedQueue = nil; | ||
533 | [self cancelLoad]; | 524 | [self cancelLoad]; |
534 | 525 | ||
535 | [[self retain] autorelease]; | 526 | [[self retain] autorelease]; |
536 | - | 527 | + [self willChangeValueForKey:@"isCancelled"]; |
528 | + cancelled = YES; | ||
529 | + [self didChangeValueForKey:@"isCancelled"]; | ||
530 | + | ||
537 | [[self cancelledLock] unlock]; | 531 | [[self cancelledLock] unlock]; |
538 | } | 532 | } |
539 | 533 | ||
@@ -1712,7 +1706,7 @@ static NSOperationQueue *sharedQueue = nil; | @@ -1712,7 +1706,7 @@ static NSOperationQueue *sharedQueue = nil; | ||
1712 | [[self connectionInfo] setObject:[NSDate dateWithTimeIntervalSinceNow:[self persistentConnectionTimeoutSeconds]] forKey:@"expires"]; | 1706 | [[self connectionInfo] setObject:[NSDate dateWithTimeIntervalSinceNow:[self persistentConnectionTimeoutSeconds]] forKey:@"expires"]; |
1713 | } | 1707 | } |
1714 | 1708 | ||
1715 | - if ([self error]) { | 1709 | + if ([self isCancelled] || [self error]) { |
1716 | return; | 1710 | return; |
1717 | } | 1711 | } |
1718 | 1712 |
-
Please register or login to post a comment