Improve writeSSLocalConfFile

This commit is contained in:
Charlie Qiu
2016-06-11 17:50:32 +08:00
parent 7590cf2b71
commit a6a7b53f64

View File

@ -115,19 +115,13 @@ func writeSSLocalConfFile(conf:[String:AnyObject]) -> Bool {
let filepath = NSHomeDirectory() + APP_SUPPORT_DIR + "ss-local-config.json" let filepath = NSHomeDirectory() + APP_SUPPORT_DIR + "ss-local-config.json"
let data: NSData = try NSJSONSerialization.dataWithJSONObject(conf, options: .PrettyPrinted) let data: NSData = try NSJSONSerialization.dataWithJSONObject(conf, options: .PrettyPrinted)
// Check if it has been changed let oldSum = getFileSHA1Sum(filepath)
let defaults = NSUserDefaults.standardUserDefaults() try data.writeToFile(filepath, options: .DataWritingAtomic)
let KEY = "SSLocalConfigFileSHA1" let newSum = getFileSHA1Sum(filepath)
let newSha1Value = data.sha1()
if let sha1Value = defaults.stringForKey(KEY) { if oldSum == newSum {
if newSha1Value == sha1Value {
// No changed
return false return false
} }
}
defaults.setObject(newSha1Value, forKey: KEY)
try data.writeToFile(filepath, options: .DataWritingAtomic)
return true return true
} catch { } catch {