From dc3c2d027c34d26dd55f7814f0185437d9c1edf0 Mon Sep 17 00:00:00 2001 From: Shadowfacts Date: Tue, 13 Dec 2022 11:37:12 -0500 Subject: [PATCH] Prevent statuses which are in the persisted timeline state from being pruned --- Tusker/Scenes/MainSceneDelegate.swift | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Tusker/Scenes/MainSceneDelegate.swift b/Tusker/Scenes/MainSceneDelegate.swift index d7387950..910dfb75 100644 --- a/Tusker/Scenes/MainSceneDelegate.swift +++ b/Tusker/Scenes/MainSceneDelegate.swift @@ -131,7 +131,7 @@ class MainSceneDelegate: UIResponder, UIWindowSceneDelegate, TuskerSceneDelegate minDate.addTimeInterval(-7 * 24 * 60 * 60) let statusReq: NSFetchRequest = StatusMO.fetchRequest() - statusReq.predicate = NSPredicate(format: "(lastFetchedAt = nil) OR (lastFetchedAt < %@)", minDate as NSDate) + statusReq.predicate = NSPredicate(format: "((lastFetchedAt = nil) OR (lastFetchedAt < %@)) AND (timelines.@count = 0)", minDate as NSDate) let deleteStatusReq = NSBatchDeleteRequest(fetchRequest: statusReq) deleteStatusReq.resultType = .resultTypeCount if let res = try? context.execute(deleteStatusReq) as? NSBatchDeleteResult {