diff --git a/modules/gui/macosx/library/VLCLibraryDataTypes.h b/modules/gui/macosx/library/VLCLibraryDataTypes.h
index d168a618d523d0bb9b7572611fae1ba825b0a926..d208f20ff6514f898de572cd436c70422c4c8a88 100644
--- a/modules/gui/macosx/library/VLCLibraryDataTypes.h
+++ b/modules/gui/macosx/library/VLCLibraryDataTypes.h
@@ -169,7 +169,7 @@ extern const long long int VLCMediaLibraryMediaItemDurationDenominator;
 @property (readonly) time_t lastPlayedDate;
 @property (readonly) NSString *title;
 
-@property (readonly) NSString *smallArtworkMRL;
+@property (readonly, nullable) NSString *smallArtworkMRL;
 
 @property (readonly) BOOL smallArtworkGenerated;
 @property (readonly) BOOL favorited;
diff --git a/modules/gui/macosx/library/VLCLibraryDataTypes.m b/modules/gui/macosx/library/VLCLibraryDataTypes.m
index ea1ab16335c0b3b961194f55bc1abeae87b9e67c..82fef465e05c8ca14dc2a8cef0059414b658cb5f 100644
--- a/modules/gui/macosx/library/VLCLibraryDataTypes.m
+++ b/modules/gui/macosx/library/VLCLibraryDataTypes.m
@@ -295,8 +295,12 @@ NSString *VLCMediaLibraryMediaItemLibraryID = @"VLCMediaLibraryMediaItemLibraryI
         _playCount = p_mediaItem->i_playcount;
         _lastPlayedDate = p_mediaItem->i_last_played_date;
         _title = toNSStr(p_mediaItem->psz_title);
-        _smallArtworkMRL = toNSStr(p_mediaItem->thumbnails[VLC_ML_THUMBNAIL_SMALL].psz_mrl);
-        _smallArtworkGenerated = p_mediaItem->thumbnails[VLC_ML_THUMBNAIL_SMALL].b_generated;
+        _smallArtworkGenerated = p_mediaItem->thumbnails[VLC_ML_THUMBNAIL_SMALL].psz_mrl != NULL;
+        if (_smallArtworkGenerated) {
+            _smallArtworkMRL = toNSStr(p_mediaItem->thumbnails[VLC_ML_THUMBNAIL_SMALL].psz_mrl);
+        } else {
+            _smallArtworkMRL = nil;
+        }
         _favorited = p_mediaItem->b_is_favorite;
 
         switch (p_mediaItem->i_subtype) {