From c6cb488af76dfd1287fa4ee0aa364e0b7a444f3e Mon Sep 17 00:00:00 2001 From: matthewpalmer Date: Tue, 25 Nov 2014 08:47:56 +1100 Subject: [PATCH] Added extra check to prevent crashes on delete then load value --- .../UserInterfaceState.xcuserstate | Bin 20857 -> 21435 bytes Locksmith/Base.lproj/Main.storyboard | 37 +++++++++++------- Locksmith/Locksmith.swift | 2 +- 3 files changed, 24 insertions(+), 15 deletions(-) diff --git a/Locksmith.xcodeproj/project.xcworkspace/xcuserdata/matthewpalmer.xcuserdatad/UserInterfaceState.xcuserstate b/Locksmith.xcodeproj/project.xcworkspace/xcuserdata/matthewpalmer.xcuserdatad/UserInterfaceState.xcuserstate index 6492903335a4fc2f5a84d9eb3a7160494bf450d2..95b90a5ea4f854b09054684b0203ae9f412b42a7 100644 GIT binary patch delta 12218 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 delta 11914 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 diff --git a/Locksmith/Base.lproj/Main.storyboard b/Locksmith/Base.lproj/Main.storyboard index 4f1f592..e69f8ce 100644 --- a/Locksmith/Base.lproj/Main.storyboard +++ b/Locksmith/Base.lproj/Main.storyboard @@ -1,7 +1,7 @@ - + - + @@ -16,7 +16,7 @@ - - - + + + + + - + diff --git a/Locksmith/Locksmith.swift b/Locksmith/Locksmith.swift index 15a0295..1578569 100644 --- a/Locksmith/Locksmith.swift +++ b/Locksmith/Locksmith.swift @@ -42,7 +42,7 @@ class Locksmith: NSObject { if result != nil { println("resultPointer \(result)") - if type == .Read { + if type == .Read && status == errSecSuccess { if let data = result?.takeUnretainedValue() as? NSData { // Convert the retrieved data to a dictionary resultsDictionary = NSKeyedUnarchiver.unarchiveObjectWithData(data) as? NSDictionary