mirror of
https://github.com/SideStore/SideStore.git
synced 2026-02-16 02:03:32 +01:00
Fixes error fetching Friend Zone patrons due to unexpected nil name
This commit is contained in:
@@ -70,7 +70,7 @@ class UpdatePatronsOperation: ResultOperation<Void>
|
|||||||
do
|
do
|
||||||
{
|
{
|
||||||
let patrons = try result.get()
|
let patrons = try result.get()
|
||||||
let managedPatrons = patrons.map { ManagedPatron(patron: $0, context: self.context) }
|
let managedPatrons = patrons.compactMap { ManagedPatron(patron: $0, context: self.context) }
|
||||||
|
|
||||||
let patronIDs = Set(managedPatrons.map { $0.identifier })
|
let patronIDs = Set(managedPatrons.map { $0.identifier })
|
||||||
let nonFriendZonePredicate = NSPredicate(format: "NOT (%K IN %@)", #keyPath(ManagedPatron.identifier), patronIDs)
|
let nonFriendZonePredicate = NSPredicate(format: "NOT (%K IN %@)", #keyPath(ManagedPatron.identifier), patronIDs)
|
||||||
|
|||||||
@@ -19,11 +19,14 @@ public class ManagedPatron: NSManagedObject, Fetchable
|
|||||||
super.init(entity: entity, insertInto: context)
|
super.init(entity: entity, insertInto: context)
|
||||||
}
|
}
|
||||||
|
|
||||||
public init(patron: Patron, context: NSManagedObjectContext)
|
public init?(patron: Patron, context: NSManagedObjectContext)
|
||||||
{
|
{
|
||||||
|
// Only cache Patrons with non-nil names.
|
||||||
|
guard let name = patron.name else { return nil }
|
||||||
|
|
||||||
super.init(entity: ManagedPatron.entity(), insertInto: context)
|
super.init(entity: ManagedPatron.entity(), insertInto: context)
|
||||||
|
|
||||||
self.name = patron.name
|
self.name = name
|
||||||
self.identifier = patron.identifier
|
self.identifier = patron.identifier
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ extension PatreonAPI
|
|||||||
{
|
{
|
||||||
struct Attributes: Decodable
|
struct Attributes: Decodable
|
||||||
{
|
{
|
||||||
var full_name: String
|
var full_name: String?
|
||||||
var patron_status: String?
|
var patron_status: String?
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -54,7 +54,7 @@ extension Patron
|
|||||||
|
|
||||||
public class Patron
|
public class Patron
|
||||||
{
|
{
|
||||||
public var name: String
|
public var name: String?
|
||||||
public var identifier: String
|
public var identifier: String
|
||||||
|
|
||||||
public var status: Status
|
public var status: Status
|
||||||
|
|||||||
Reference in New Issue
Block a user