# HG changeset patch # User Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com> # Date 1614352677 0 # Node ID 47d61727054a1fc59597795734c36ccc55179f8f # Parent 1ba446679981bce63de30182b9789efcbc718b8e Fix crash when nil UserSettings diff -r 1ba446679981 -r 47d61727054a LazyBear/ContentView.swift --- a/LazyBear/ContentView.swift Fri Feb 26 15:17:41 2021 +0000 +++ b/LazyBear/ContentView.swift Fri Feb 26 15:17:57 2021 +0000 @@ -40,7 +40,8 @@ .offset(y: hudManager.isShowing ? 0 : -100) .animation(.easeInOut) } - .accentColor(Color("\(userSettings.first!.theme.lowercased())Accent")) + .accentColor(Color("\(userSettings.first?.theme?.lowercased() ?? "default")Accent")) + // If this value is not optional it will cause a crash } } diff -r 1ba446679981 -r 47d61727054a LazyBear/UI/Settings.swift --- a/LazyBear/UI/Settings.swift Fri Feb 26 15:17:41 2021 +0000 +++ b/LazyBear/UI/Settings.swift Fri Feb 26 15:17:57 2021 +0000 @@ -31,7 +31,7 @@ private func save(change: Any) { let userSettings = UserSettings(context: moc) - userSettings.theme = change as! String + userSettings.theme = change as? String userSettings.changedAt = Date() do { try moc.save() diff -r 1ba446679981 -r 47d61727054a UserSettings+CoreDataProperties.swift --- a/UserSettings+CoreDataProperties.swift Fri Feb 26 15:17:41 2021 +0000 +++ b/UserSettings+CoreDataProperties.swift Fri Feb 26 15:17:57 2021 +0000 @@ -16,8 +16,8 @@ return NSFetchRequest(entityName: "UserSettings") } - @NSManaged public var appIcon: String - @NSManaged public var theme: String + @NSManaged public var appIcon: String? + @NSManaged public var theme: String? @NSManaged public var changedAt: Date }