Move call of range update completion blocks to consider early returns in _updateVisibleNodeIndexPaths

This commit is contained in:
Michael Schneider
2016-03-22 12:43:09 -07:00
parent 3668f45286
commit 41362fca39

View File

@@ -134,6 +134,11 @@ static UIApplicationState __ApplicationState = UIApplicationStateActive;
dispatch_async(dispatch_get_main_queue(), ^{
[self _updateVisibleNodeIndexPaths];
for (void (^completionBlock)(void) in _scheduledRangeUpdateCompletionBlocks) {
completionBlock();
}
[_scheduledRangeUpdateCompletionBlocks removeAllObjects];
dataSource = nil;
delegate = nil;
});
@@ -336,11 +341,6 @@ static UIApplicationState __ApplicationState = UIApplicationStateActive;
_rangeIsValid = YES;
_queuedRangeUpdate = NO;
for (void (^completionBlock)(void) in _scheduledRangeUpdateCompletionBlocks) {
completionBlock();
}
[_scheduledRangeUpdateCompletionBlocks removeAllObjects];
#if ASRangeControllerLoggingEnabled
// NSSet *visibleNodePathsSet = [NSSet setWithArray:visibleNodePaths];
// BOOL setsAreEqual = [visibleIndexPaths isEqualToSet:visibleNodePathsSet];