From f2095690a0c1547c875956d4a0fe1bfee885bba2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Felix=20Paul=20K=C3=BChne?= Date: Sat, 21 Apr 2018 18:39:30 +0200 Subject: [PATCH] library view controller: return early and don't set the activity if MLKit fails to provide a media URI description (cherry picked from commit d43effa97ca0d729d5752130e072af2399f254e4) --- Sources/VLCLibraryViewController.m | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/Sources/VLCLibraryViewController.m b/Sources/VLCLibraryViewController.m index 5903b1b0..6584f571 100644 --- a/Sources/VLCLibraryViewController.m +++ b/Sources/VLCLibraryViewController.m @@ -353,6 +353,11 @@ static NSString *kUsingTableViewToShowData = @"UsingTableViewToShowData"; - (void)createSpotlightItem:(nonnull NSManagedObject *)mediaObject { if (![VLCKeychainCoordinator passcodeLockEnabled]) { + NSURL *uriRepresentation = mediaObject.objectID.URIRepresentation; + if (uriRepresentation == nil) { + return; + } + self.userActivity = [[NSUserActivity alloc] initWithActivityType:kVLCUserActivityPlaying]; MLFile *file = nil; @@ -363,14 +368,10 @@ static NSString *kUsingTableViewToShowData = @"UsingTableViewToShowData"; } else if ([mediaObject isKindOfClass:[MLFile class]]){ file = (MLFile *)mediaObject; } + self.userActivity.title = file.title; self.userActivity.contentAttributeSet = file.coreSpotlightAttributeSet; - - NSURL *uriRepresentation = mediaObject.objectID.URIRepresentation; - if (uriRepresentation != nil) { - self.userActivity.userInfo = @{ @"playingmedia": uriRepresentation}; - } - + self.userActivity.userInfo = @{ @"playingmedia": uriRepresentation}; self.userActivity.eligibleForSearch = YES; self.userActivity.eligibleForHandoff = YES; [self.userActivity becomeCurrent]; -- GitLab