improve error handling

This commit is contained in:
Shelley Vohr 2017-12-11 13:11:03 -05:00
parent 765f223fef
commit 84bab48627
No known key found for this signature in database
GPG key ID: F13993A75599653C
2 changed files with 23 additions and 12 deletions

View file

@ -146,13 +146,17 @@ v8::Local<v8::Value> SystemPreferences::GetUserDefault(
void SystemPreferences::RegisterDefaults(mate::Arguments* args) {
base::DictionaryValue value;
args->GetNext(&value);
@try {
NSDictionary* dict = DictionaryValueToNSDictionary(value);
[[NSUserDefaults standardUserDefaults] registerDefaults:dict];
} @catch (NSException* exception) {
if(!args->GetNext(&value)) {
args->ThrowError("Invalid userDefault data provided");
} else {
args->GetNext(&value);
@try {
NSDictionary* dict = DictionaryValueToNSDictionary(value);
[[NSUserDefaults standardUserDefaults] registerDefaults:dict];
} @catch (NSException* exception) {
args->ThrowError("Invalid userDefault data provided");
}
}
}