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