diff --git a/AsyncDisplayKit/ASCollectionView.mm b/AsyncDisplayKit/ASCollectionView.mm index 946bf1cd8e..79ebd5eaa0 100644 --- a/AsyncDisplayKit/ASCollectionView.mm +++ b/AsyncDisplayKit/ASCollectionView.mm @@ -234,7 +234,8 @@ static BOOL _isInterceptedSelector(SEL sel) - (void)setDataSource:(id)dataSource { - ASDisplayNodeAssert(NO, @"ASCollectionView uses asyncDataSource, not UICollectionView's dataSource property."); + // UIKit can internally generate a call to this method upon changing the asyncDataSource; only assert for non-nil. + ASDisplayNodeAssert(dataSource == nil, @"ASCollectionView uses asyncDataSource, not UICollectionView's dataSource property."); } - (void)setDelegate:(id)delegate diff --git a/AsyncDisplayKit/ASTableView.mm b/AsyncDisplayKit/ASTableView.mm index 47ed7778ac..c1a922d571 100644 --- a/AsyncDisplayKit/ASTableView.mm +++ b/AsyncDisplayKit/ASTableView.mm @@ -259,7 +259,8 @@ void ASPerformBlockWithoutAnimation(BOOL withoutAnimation, void (^block)()) { - (void)setDataSource:(id)dataSource { - ASDisplayNodeAssert(NO, @"ASTableView uses asyncDataSource, not UITableView's dataSource property."); + // UIKit can internally generate a call to this method upon changing the asyncDataSource; only assert for non-nil. + ASDisplayNodeAssert(dataSource == nil, @"ASTableView uses asyncDataSource, not UITableView's dataSource property."); } - (void)setDelegate:(id)delegate diff --git a/examples/ASTableViewStressTest/Sample/ViewController.m b/examples/ASTableViewStressTest/Sample/ViewController.m index a297d37c42..f082e565f0 100644 --- a/examples/ASTableViewStressTest/Sample/ViewController.m +++ b/examples/ASTableViewStressTest/Sample/ViewController.m @@ -100,9 +100,6 @@ - (void)thrashTableView { - _tableView.asyncDelegate = self; - _tableView.asyncDataSource = self; - [_tableView reloadData]; NSArray *indexPathsAddedAndRemoved = nil;