add method binding and error guards

This commit is contained in:
Shelley Vohr 2017-12-10 11:25:43 -05:00
parent 1ccad4a7e9
commit 18ee34f1a1
No known key found for this signature in database
GPG key ID: F13993A75599653C
3 changed files with 11 additions and 6 deletions

View file

@ -144,11 +144,15 @@ v8::Local<v8::Value> SystemPreferences::GetUserDefault(
}
}
void SystemPreferences::RegisterDefaults(const base::DictionaryValue& defaults) {
if (NSDictionary* defaultsDict = DictionaryValueToNSDictionary(defaults)) {
[[NSUserDefaults standardUserDefaults] registerDefaults:defaultsDict];
} else {
defaults->ThrowError("Unable to parse userDefaults");
void SystemPreferences::RegisterDefaults(mate::Arguments* args) {
base::DictionaryValue value;
if (!args->GetNext(&value)) {
args->ThrowError("Unable to parse userDefaults dict");
return;
}
if (NSDictionary* dict = DictionaryValueToNSDictionary(value)) {
[[NSUserDefaults standardUserDefaults] registerDefaults:dict];
}
}