From 00a69da9a321f6234604331e4912a85bea44d37d Mon Sep 17 00:00:00 2001 From: Peter Date: Thu, 16 Jul 2015 23:55:19 +0300 Subject: [PATCH] no message --- Postbox/Postbox.swift | 24 +++++++++--------------- 1 file changed, 9 insertions(+), 15 deletions(-) diff --git a/Postbox/Postbox.swift b/Postbox/Postbox.swift index 91ccd421b5..8367aa60dc 100644 --- a/Postbox/Postbox.swift +++ b/Postbox/Postbox.swift @@ -358,23 +358,17 @@ public final class Postbox { } } - public func keychainEntryForKey(key: String) -> Signal { - return Signal { subscriber in - self.queue.dispatch { - let blob = Blob(data: key.dataUsingEncoding(NSUTF8StringEncoding, allowLossyConversion: true)!) - var buffer: ReadBuffer? - for row in self.database.prepareCached("SELECT data FROM keychain WHERE key = ?").run(blob) { - let data = (row[0] as! Blob).data - let memory = malloc(data.length) - memcpy(memory, data.bytes, data.length) - buffer = ReadBuffer(memory: UnsafeMutablePointer(memory), length: data.length, freeWhenDone: true) - break - } - subscriber.putNext(buffer) - subscriber.putCompletion() + public func keychainEntryForKey(key: String) -> NSData? { + var result: NSData? + self.queue.sync { + let blob = Blob(data: key.dataUsingEncoding(NSUTF8StringEncoding, allowLossyConversion: true)!) + var buffer: ReadBuffer? + for row in self.database.prepareCached("SELECT data FROM keychain WHERE key = ?").run(blob) { + result = (row[0] as! Blob).data + break } - return EmptyDisposable } + return result } public func setKeychainEntry(key: String, value: NSData) {