X-Git-Url: https://git.saurik.com/apple/security.git/blobdiff_plain/fa7225c82381bac4432a6edf16f53b5370238d85..866f8763175ff60e4fa455b92b5eb660a12fe6c7:/SecurityTool/smartcards.m?ds=sidebyside diff --git a/SecurityTool/smartcards.m b/SecurityTool/smartcards.m index 2bbd4444..fb934a18 100644 --- a/SecurityTool/smartcards.m +++ b/SecurityTool/smartcards.m @@ -11,9 +11,8 @@ const CFStringRef kTKDisabledTokensPreferencesKey = CFSTR("DisabledTokens"); static void listDisabledTokens() { id value = (__bridge_transfer id)CFPreferencesCopyValue(kTKDisabledTokensPreferencesKey, kTKSmartCardPreferencesDomain, kCFPreferencesAnyUser, kCFPreferencesCurrentHost); - if (![value isKindOfClass:NSArray.class]) + if (value && ![value isKindOfClass:NSArray.class]) return; - NSArray *disabledTokens = (NSArray*)value; for (id tokenName in disabledTokens) { if ([tokenName isKindOfClass:NSString.class]) { @@ -24,7 +23,7 @@ static void listDisabledTokens() { static void disable(const char *tokenToDisable) { id value = (__bridge_transfer id)CFPreferencesCopyValue(kTKDisabledTokensPreferencesKey, kTKSmartCardPreferencesDomain, kCFPreferencesAnyUser, kCFPreferencesCurrentHost); - if (![value isKindOfClass:NSArray.class]) + if (value && ![value isKindOfClass:NSArray.class]) return; NSMutableArray *disabledTokens = [NSMutableArray arrayWithArray:value]; NSString *tokenName = [NSString stringWithUTF8String:tokenToDisable]; @@ -40,9 +39,8 @@ static void disable(const char *tokenToDisable) { static void enable(const char *tokenToEnable) { id value = (__bridge_transfer id)CFPreferencesCopyValue(kTKDisabledTokensPreferencesKey, kTKSmartCardPreferencesDomain, kCFPreferencesAnyUser, kCFPreferencesCurrentHost); - if (![value isKindOfClass:NSArray.class]) + if (value && ![value isKindOfClass:NSArray.class]) return; - NSString *tokenName = [NSString stringWithUTF8String:tokenToEnable]; NSMutableArray *disabledTokens = [NSMutableArray arrayWithArray:value]; if ([disabledTokens containsObject:tokenName]) {