When managedObjectContext is set to nil on RKManagedObjectRequestOperation, avoid creation of an orphaned privateContext

This commit is contained in:
Blake Watters
2012-11-09 11:05:26 -05:00
parent b5606543ca
commit e088bdc186

View File

@@ -120,13 +120,17 @@ static NSURL *RKRelativeURLFromURLAndResponseDescriptors(NSURL *URL, NSArray *re
{
_managedObjectContext = managedObjectContext;
// Create a private context
NSManagedObjectContext *privateContext = [[NSManagedObjectContext alloc] initWithConcurrencyType:NSPrivateQueueConcurrencyType];
[privateContext performBlockAndWait:^{
privateContext.parentContext = self.managedObjectContext;
privateContext.mergePolicy = NSMergeByPropertyStoreTrumpMergePolicy;
}];
self.privateContext = privateContext;
if (managedObjectContext) {
// Create a private context
NSManagedObjectContext *privateContext = [[NSManagedObjectContext alloc] initWithConcurrencyType:NSPrivateQueueConcurrencyType];
[privateContext performBlockAndWait:^{
privateContext.parentContext = managedObjectContext;
privateContext.mergePolicy = NSMergeByPropertyStoreTrumpMergePolicy;
}];
self.privateContext = privateContext;
} else {
self.privateContext = nil;
}
}
#pragma mark - RKMapperOperationDelegate methods