     }
     
     @objc func controller(controller: NSFetchedResultsController, didChangeSection sectionInfo: NSFetchedResultsSectionInfo, atIndex sectionIndex: Int, forChangeType type: NSFetchedResultsChangeType) {
-        if self.isFiltering {
+        if self.isFiltering || self.shouldReloadData {
             return
         }
 

        case .Move:
            self.pendingActions.append() {
                [weak self] in
                
                self?.collectionView?.moveItemAtIndexPath(indexPath!, toIndexPath: newIndexPath!)
            }
            self.updatedIndexPaths.remove(indexPath!)

        case .Delete:
            self.pendingActions.append() {
                [weak self] in
                self?.collectionView?.deleteSections(NSIndexSet(index: sectionIndex))
                self?.collectionView?.collectionViewLayout.invalidateLayout()
            }
