vlc | branch: master | Felix Paul Kühne <[email protected]> | Thu Apr 30 15:06:30 2020 +0200| [8ae48d5606d413f9c1dfd66a9f6030e386a884e9] | committer: Felix Paul Kühne
macosx/media library: add missing sanity checks This unbreaks playback if the media library is disabled at runtime. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=8ae48d5606d413f9c1dfd66a9f6030e386a884e9 --- modules/gui/macosx/library/VLCLibraryDataTypes.m | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/modules/gui/macosx/library/VLCLibraryDataTypes.m b/modules/gui/macosx/library/VLCLibraryDataTypes.m index 5aee788748..167ecaf38e 100644 --- a/modules/gui/macosx/library/VLCLibraryDataTypes.m +++ b/modules/gui/macosx/library/VLCLibraryDataTypes.m @@ -187,6 +187,9 @@ NSString *VLCMediaLibraryMediaItemLibraryID = @"VLCMediaLibraryMediaItemLibraryI return nil; } vlc_medialibrary_t *p_mediaLibrary = vlc_ml_instance_get(p_intf); + if (!p_mediaLibrary) { + return nil; + } vlc_ml_artist_t *p_artist = vlc_ml_get_artist(p_mediaLibrary, artistID); VLCMediaLibraryArtist *artist = nil; if (p_artist) { @@ -238,6 +241,9 @@ NSString *VLCMediaLibraryMediaItemLibraryID = @"VLCMediaLibraryMediaItemLibraryI return @[]; } vlc_medialibrary_t *p_mediaLibrary = vlc_ml_instance_get(p_intf); + if (!p_mediaLibrary) { + return @[]; + } vlc_ml_media_list_t *p_mediaList = vlc_ml_list_album_tracks(p_mediaLibrary, NULL, _albumID); NSMutableArray *mutableArray = [[NSMutableArray alloc] initWithCapacity:p_mediaList->i_nb_items]; for (size_t x = 0; x < p_mediaList->i_nb_items; x++) { @@ -300,6 +306,9 @@ NSString *VLCMediaLibraryMediaItemLibraryID = @"VLCMediaLibraryMediaItemLibraryI return nil; } vlc_medialibrary_t *p_mediaLibrary = vlc_ml_instance_get(p_intf); + if (!p_mediaLibrary) { + return nil; + } vlc_ml_media_t *p_mediaItem = vlc_ml_get_media(p_mediaLibrary, libraryID); VLCMediaLibraryMediaItem *returnValue = nil; if (p_mediaItem) { @@ -315,6 +324,9 @@ NSString *VLCMediaLibraryMediaItemLibraryID = @"VLCMediaLibraryMediaItemLibraryI return nil; } vlc_medialibrary_t *p_mediaLibrary = vlc_ml_instance_get(p_intf); + if (!p_mediaLibrary) { + return nil; + } vlc_ml_media_t *p_mediaItem = vlc_ml_get_media_by_mrl(p_mediaLibrary, [[url absoluteString] UTF8String]); VLCMediaLibraryMediaItem *returnValue = nil; @@ -331,6 +343,9 @@ NSString *VLCMediaLibraryMediaItemLibraryID = @"VLCMediaLibraryMediaItemLibraryI return nil; } vlc_medialibrary_t *p_mediaLibrary = vlc_ml_instance_get(p_intf); + if (!p_mediaLibrary) { + return nil; + } if (p_mediaItem != NULL && p_mediaLibrary != NULL) { return [self initWithMediaItem:p_mediaItem library:p_mediaLibrary]; } @@ -409,6 +424,9 @@ NSString *VLCMediaLibraryMediaItemLibraryID = @"VLCMediaLibraryMediaItemLibraryI return nil; } vlc_medialibrary_t *p_mediaLibrary = vlc_ml_instance_get(p_intf); + if (!p_mediaLibrary) { + return nil; + } vlc_ml_media_t *p_media = vlc_ml_new_external_media(p_mediaLibrary, urlString.UTF8String); if (p_media) { self = [self initWithMediaItem:p_media library:p_mediaLibrary]; @@ -429,6 +447,9 @@ NSString *VLCMediaLibraryMediaItemLibraryID = @"VLCMediaLibraryMediaItemLibraryI return nil; } vlc_medialibrary_t *p_mediaLibrary = vlc_ml_instance_get(p_intf); + if (!p_mediaLibrary) { + return nil; + } vlc_ml_media_t *p_media = vlc_ml_new_stream(p_mediaLibrary, urlString.UTF8String); if (p_media) { self = [self initWithMediaItem:p_media library:p_mediaLibrary]; _______________________________________________ vlc-commits mailing list [email protected] https://mailman.videolan.org/listinfo/vlc-commits
