diff --git a/modules/gui/macosx/library/video-library/VLCLibraryVideoViewController.h b/modules/gui/macosx/library/video-library/VLCLibraryVideoViewController.h
index 024bb9d02b0088cc305343c6c39ca845ab5b8162..6a6162eaac3e1cb1a1bd9fb9c21532475b606979 100644
--- a/modules/gui/macosx/library/video-library/VLCLibraryVideoViewController.h
+++ b/modules/gui/macosx/library/video-library/VLCLibraryVideoViewController.h
@@ -48,8 +48,8 @@ NS_ASSUME_NONNULL_BEGIN
 
 @property (readonly) VLCLoadingOverlayView *loadingOverlayView;
 
-@property (readonly) VLCLibraryVideoDataSource *libraryVideoDataSource;
-@property (readonly) VLCLibraryShowsDataSource *libraryShowsDataSource;
+@property (readonly, nullable) VLCLibraryVideoDataSource *libraryVideoDataSource;
+@property (readonly, nullable) VLCLibraryShowsDataSource *libraryShowsDataSource;
 
 - (instancetype)initWithLibraryWindow:(VLCLibraryWindow *)libraryWindow;
 - (void)presentVideoView;
diff --git a/modules/gui/macosx/library/video-library/VLCLibraryVideoViewController.m b/modules/gui/macosx/library/video-library/VLCLibraryVideoViewController.m
index e9178a157fd17b6e7cce70a1aec870038fc07750..342b2616a7b7bac354152bc120a44d8fe1bacd54 100644
--- a/modules/gui/macosx/library/video-library/VLCLibraryVideoViewController.m
+++ b/modules/gui/macosx/library/video-library/VLCLibraryVideoViewController.m
@@ -84,8 +84,6 @@
 
         [self setupPropertiesFromLibraryWindow:libraryWindow];
         [self setupTableViews];
-        [self setupVideoDataSource];
-        [self setupShowsDataSource];
         [self setupCollectionView];
         [self setupVideoPlaceholderView];
         [self setupVideoLibraryViews];
@@ -295,6 +293,8 @@
 
 - (void)updatePresentedVideoLibraryView
 {
+    _libraryShowsDataSource = nil;
+    [self setupVideoDataSource];
     self.videoLibraryCollectionView.dataSource = self.libraryVideoDataSource;
 
     self.videoLibraryGroupsTableView.dataSource = self.libraryVideoDataSource;
@@ -320,6 +320,8 @@
 
 - (void)updatePresentedShowsLibraryView
 {
+    _libraryVideoDataSource = nil;
+    [self setupShowsDataSource];
     self.videoLibraryCollectionView.dataSource = self.libraryShowsDataSource;
 
     self.videoLibraryGroupsTableView.dataSource = self.libraryShowsDataSource;