diff --git a/ContinueReadingWidget/Info.plist b/ContinueReadingWidget/Info.plist index e175faa9014..3ebbe818979 100644 --- a/ContinueReadingWidget/Info.plist +++ b/ContinueReadingWidget/Info.plist @@ -17,7 +17,7 @@ CFBundlePackageType XPC! CFBundleShortVersionString - 7.6.3 + 7.6.4 CFBundleVersion 0 NSExtension diff --git a/NotificationServiceExtension/Info.plist b/NotificationServiceExtension/Info.plist index 8e4c9ef5a90..948af2d3dfc 100644 --- a/NotificationServiceExtension/Info.plist +++ b/NotificationServiceExtension/Info.plist @@ -17,7 +17,7 @@ CFBundlePackageType $(PRODUCT_BUNDLE_PACKAGE_TYPE) CFBundleShortVersionString - 7.6.3 + 7.6.4 CFBundleVersion $(CURRENT_PROJECT_VERSION) NSExtension diff --git a/WMF Framework/Info.plist b/WMF Framework/Info.plist index 178fd516e3b..77a3c1cef95 100644 --- a/WMF Framework/Info.plist +++ b/WMF Framework/Info.plist @@ -15,7 +15,7 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 7.6.3 + 7.6.4 CFBundleVersion 0 NSPrincipalClass diff --git a/Widgets/Info.plist b/Widgets/Info.plist index b49ebcaef9f..2eb66f4b4d8 100644 --- a/Widgets/Info.plist +++ b/Widgets/Info.plist @@ -17,7 +17,7 @@ CFBundlePackageType $(PRODUCT_BUNDLE_PACKAGE_TYPE) CFBundleShortVersionString - 7.6.3 + 7.6.4 CFBundleVersion $(CURRENT_PROJECT_VERSION) NSExtension diff --git a/Wikipedia Stickers/Info.plist b/Wikipedia Stickers/Info.plist index d96b52396fd..cb84970a9be 100644 --- a/Wikipedia Stickers/Info.plist +++ b/Wikipedia Stickers/Info.plist @@ -17,7 +17,7 @@ CFBundlePackageType XPC! CFBundleShortVersionString - 7.6.3 + 7.6.4 CFBundleVersion 0 UIRequiredDeviceCapabilities diff --git a/Wikipedia/Code/MWKSavedPageList.m b/Wikipedia/Code/MWKSavedPageList.m index 212ecd41d21..8ca914d750a 100644 --- a/Wikipedia/Code/MWKSavedPageList.m +++ b/Wikipedia/Code/MWKSavedPageList.m @@ -35,9 +35,14 @@ - (NSFetchRequest *)savedPageListFetchRequest { return request; } -- (NSFetchRequest *)savedPageListFetchRequestForStartDate:(NSDate *)startDate endDate:(NSDate *)endDate { +- (NSFetchRequest *)savedPageListFetchRequestForStartDate:(NSDate *)startDate endDate:(NSDate *)endDate filterNilDisplayTitles:(BOOL)filterNilDisplayTitles { NSFetchRequest *request = [WMFArticle fetchRequest]; NSPredicate *predicate = [NSPredicate predicateWithFormat:@"savedDate >= %@ AND savedDate <= %@", startDate, endDate]; + + if (filterNilDisplayTitles) { + predicate = [NSPredicate predicateWithFormat:@"savedDate >= %@ AND savedDate <= %@ AND displayTitle != nil", startDate, endDate]; + } + request.predicate = predicate; request.sortDescriptors = @[[NSSortDescriptor sortDescriptorWithKey:@"savedDate" ascending:NO]]; return request; @@ -152,11 +157,11 @@ - (void)removeEntryWithURL:(NSURL *)url { } - (NSInteger)savedArticleCountFor:(NSDate *)startDate endDate:(NSDate *)endDate { - return [self.dataStore.viewContext countForFetchRequest:[self savedPageListFetchRequestForStartDate:startDate endDate:endDate] error:nil]; + return [self.dataStore.viewContext countForFetchRequest:[self savedPageListFetchRequestForStartDate:startDate endDate:endDate filterNilDisplayTitles:NO] error:nil]; } - (NSArray *)randomSavedArticleTitlesFor:(NSDate *)startDate endDate:(NSDate *)endDate { - NSFetchRequest *fetchRequest = [self savedPageListFetchRequestForStartDate:startDate endDate:endDate]; + NSFetchRequest *fetchRequest = [self savedPageListFetchRequestForStartDate:startDate endDate:endDate filterNilDisplayTitles:YES]; NSError *error = nil; NSArray *allArticles = [self.dataStore.viewContext executeFetchRequest:fetchRequest error:&error]; @@ -176,12 +181,15 @@ - (NSInteger)savedArticleCountFor:(NSDate *)startDate endDate:(NSDate *)endDate for (NSUInteger i = 0; i < count; i++) { NSUInteger randomIndex = arc4random_uniform((uint32_t)mutableArticles.count); - [randomArticles addObject:mutableArticles[randomIndex].displayTitle]; - [mutableArticles removeObjectAtIndex:randomIndex]; // so we do not repeat articles + if (mutableArticles[randomIndex].displayTitle != nil) { + [randomArticles addObject:mutableArticles[randomIndex].displayTitle]; + [mutableArticles removeObjectAtIndex:randomIndex]; // so we do not repeat articles + } else { + continue; + } } return [randomArticles copy]; } - @end diff --git a/Wikipedia/Experimental-Info.plist b/Wikipedia/Experimental-Info.plist index 88f0f2cafad..34a2f917c63 100644 --- a/Wikipedia/Experimental-Info.plist +++ b/Wikipedia/Experimental-Info.plist @@ -24,7 +24,7 @@ CFBundlePackageType APPL CFBundleShortVersionString - 7.6.3 + 7.6.4 CFBundleSignature ???? CFBundleURLTypes diff --git a/Wikipedia/Local-Info.plist b/Wikipedia/Local-Info.plist index c81f6f47821..40db50f0dc8 100644 --- a/Wikipedia/Local-Info.plist +++ b/Wikipedia/Local-Info.plist @@ -28,7 +28,7 @@ CFBundlePackageType APPL CFBundleShortVersionString - 7.6.3 + 7.6.4 CFBundleSignature ???? CFBundleURLTypes diff --git a/Wikipedia/Staging-Info.plist b/Wikipedia/Staging-Info.plist index ce5b39f0eed..0a60862e024 100644 --- a/Wikipedia/Staging-Info.plist +++ b/Wikipedia/Staging-Info.plist @@ -24,7 +24,7 @@ CFBundlePackageType APPL CFBundleShortVersionString - 7.6.3 + 7.6.4 CFBundleSignature ???? CFBundleURLTypes diff --git a/Wikipedia/Wikipedia-Info.plist b/Wikipedia/Wikipedia-Info.plist index 9ccb72d5a6b..4b200635d90 100644 --- a/Wikipedia/Wikipedia-Info.plist +++ b/Wikipedia/Wikipedia-Info.plist @@ -24,7 +24,7 @@ CFBundlePackageType APPL CFBundleShortVersionString - 7.6.3 + 7.6.4 CFBundleSignature ???? CFBundleURLTypes diff --git a/WikipediaUnitTests/Info.plist b/WikipediaUnitTests/Info.plist index 07491f231d6..08bb847d11c 100644 --- a/WikipediaUnitTests/Info.plist +++ b/WikipediaUnitTests/Info.plist @@ -17,7 +17,7 @@ CFBundlePackageType BNDL CFBundleShortVersionString - 7.6.3 + 7.6.4 CFBundleSignature ???? CFBundleVersion