فهرست منبع

VLCLibraryViewController: Fix crash when opening a folder

(cherry picked from commit c595185ef98d72d9dcdb70196eac8dfed1bb87c0)
Carola Nitz 7 سال پیش
والد
کامیت
c29ec0b3c1
1فایلهای تغییر یافته به همراه3 افزوده شده و 1 حذف شده
  1. 3 1
      Sources/VLCLibraryViewController.m

+ 3 - 1
Sources/VLCLibraryViewController.m

@@ -146,6 +146,7 @@ static NSString *kUsingTableViewToShowData = @"UsingTableViewToShowData";
 
     if (!_collectionView) {
         _folderLayout = [[VLCFolderCollectionViewFlowLayout alloc] init];
+        _reorderLayout = [[LXReorderableCollectionViewFlowLayout alloc] init];
         _collectionView = [[UICollectionView alloc] initWithFrame:viewDimensions collectionViewLayout:_folderLayout];
         _collectionView.alwaysBounceVertical = YES;
         if (@available(iOS 11.0, *)) {
@@ -316,7 +317,8 @@ static NSString *kUsingTableViewToShowData = @"UsingTableViewToShowData";
                         if (recognizer == _folderLayout.panGestureRecognizer || recognizer == _folderLayout.longPressGestureRecognizer || recognizer == _longPressGestureRecognizer)
                             [self.collectionView removeGestureRecognizer:recognizer];
                     }
-                    _reorderLayout = [[LXReorderableCollectionViewFlowLayout alloc] init];
+                    //reloadData before setting a new layout avoids a crash deep in UIKits UICollectionViewData layoutattributs
+                    [self.collectionView reloadData];
                     [self.collectionView setCollectionViewLayout:_reorderLayout animated:NO];
                 }
             }