From 009802ae8b0500287ab02753f8ab363fce769363 Mon Sep 17 00:00:00 2001 From: Leonardo Brondani Schenkel Date: Tue, 17 Feb 2015 15:42:12 +0100 Subject: [PATCH 4/4] Migrate old tokens from NSUserDefaults --- FreeOTP/TokenStore.m | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/FreeOTP/TokenStore.m b/FreeOTP/TokenStore.m index 397b650..ea21318 100644 --- a/FreeOTP/TokenStore.m +++ b/FreeOTP/TokenStore.m @@ -48,10 +48,32 @@ getTokenOrder(FXKeychain* keychain) if (keychain == nil) return nil; keychain.accessibility = FXKeychainAccessibleWhenUnlockedThisDeviceOnly; + + [self migrateOldTokens]; return self; } +- (void)migrateOldTokens +{ + NSUserDefaults* def = [NSUserDefaults standardUserDefaults]; + if (def == nil) + return; + + NSMutableArray* order = [def objectForKey:TOKEN_ORDER]; + if(order == nil) + return; + + for(id key in order) { + NSString* value = [def objectForKey:key]; + if(value) { + [self add:[[Token alloc] initWithString:value internal:YES]]; + [def removeObjectForKey:key]; + } + } + [def removeObjectForKey:TOKEN_ORDER]; +} + - (NSUInteger)count { NSMutableArray* order = getTokenOrder(keychain); -- 2.3.0