From be5da632b314500fc258ed68652894c84df0fa70 Mon Sep 17 00:00:00 2001 From: John Rommel Estropia Date: Fri, 22 Sep 2017 23:18:25 +0900 Subject: [PATCH] fix segmentation fault --- Sources/DynamicObject.swift | 14 ++------------ 1 file changed, 2 insertions(+), 12 deletions(-) diff --git a/Sources/DynamicObject.swift b/Sources/DynamicObject.swift index c48bdba..b36c020 100644 --- a/Sources/DynamicObject.swift +++ b/Sources/DynamicObject.swift @@ -78,12 +78,7 @@ extension NSManagedObject: DynamicObject { public class func cs_fromRaw(object: NSManagedObject) -> Self { - @inline(__always) - func forceCast(_ value: Any) -> T { - - return value as! T - } - return forceCast(object) + return unsafeDowncast(object, to: self) } public static func cs_matches(object: NSManagedObject) -> Bool { @@ -124,12 +119,7 @@ extension CoreStoreObject { if let coreStoreObject = object.coreStoreObject { - @inline(__always) - func forceCast(_ value: CoreStoreObject) -> T { - - return value as! T - } - return forceCast(coreStoreObject) + return unsafeDowncast(coreStoreObject, to: self) } let coreStoreObject = self.init(rawObject: object) object.coreStoreObject = coreStoreObject