Fix potential crash if delegates return nil

This commit is contained in:
Andreas Linde 2012-11-16 16:57:44 +01:00
parent dc7db231cb
commit 31e680400e

View File

@ -250,7 +250,7 @@ NSString *const kBITCrashManagerStatus = @"BITCrashManagerStatus";
[[BITHockeyManager sharedHockeyManager].delegate respondsToSelector:@selector(userIDForHockeyManager:componentManager:)]) { [[BITHockeyManager sharedHockeyManager].delegate respondsToSelector:@selector(userIDForHockeyManager:componentManager:)]) {
userID = [[BITHockeyManager sharedHockeyManager].delegate userID = [[BITHockeyManager sharedHockeyManager].delegate
userIDForHockeyManager:[BITHockeyManager sharedHockeyManager] userIDForHockeyManager:[BITHockeyManager sharedHockeyManager]
componentManager:self]; componentManager:self] ?: @"";
} }
return userID; return userID;
@ -262,13 +262,13 @@ NSString *const kBITCrashManagerStatus = @"BITCrashManagerStatus";
if (self.delegate && [self.delegate respondsToSelector:@selector(userNameForCrashManager:)]) { if (self.delegate && [self.delegate respondsToSelector:@selector(userNameForCrashManager:)]) {
if (!self.isAppStoreEnvironment) if (!self.isAppStoreEnvironment)
NSLog(@"[HockeySDK] DEPRECATED: Please use BITHockeyManagerDelegate's userNameForHockeyManager:componentManager: or userIDForHockeyManager:componentManager: instead."); NSLog(@"[HockeySDK] DEPRECATED: Please use BITHockeyManagerDelegate's userNameForHockeyManager:componentManager: or userIDForHockeyManager:componentManager: instead.");
username = [self.delegate userNameForCrashManager:self]; username = [self.delegate userNameForCrashManager:self] ?: @"";
} }
if ([BITHockeyManager sharedHockeyManager].delegate && if ([BITHockeyManager sharedHockeyManager].delegate &&
[[BITHockeyManager sharedHockeyManager].delegate respondsToSelector:@selector(userNameForHockeyManager:componentManager:)]) { [[BITHockeyManager sharedHockeyManager].delegate respondsToSelector:@selector(userNameForHockeyManager:componentManager:)]) {
username = [[BITHockeyManager sharedHockeyManager].delegate username = [[BITHockeyManager sharedHockeyManager].delegate
userNameForHockeyManager:[BITHockeyManager sharedHockeyManager] userNameForHockeyManager:[BITHockeyManager sharedHockeyManager]
componentManager:self]; componentManager:self] ?: @"";
} }
return username; return username;
@ -280,13 +280,13 @@ NSString *const kBITCrashManagerStatus = @"BITCrashManagerStatus";
if (self.delegate && [self.delegate respondsToSelector:@selector(userEmailForCrashManager:)]) { if (self.delegate && [self.delegate respondsToSelector:@selector(userEmailForCrashManager:)]) {
if (!self.isAppStoreEnvironment) if (!self.isAppStoreEnvironment)
NSLog(@"[HockeySDK] DEPRECATED: Please use BITHockeyManagerDelegate's userEmailForHockeyManager:componentManager: instead."); NSLog(@"[HockeySDK] DEPRECATED: Please use BITHockeyManagerDelegate's userEmailForHockeyManager:componentManager: instead.");
useremail = [self.delegate userEmailForCrashManager:self]; useremail = [self.delegate userEmailForCrashManager:self] ?: @"";
} }
if ([BITHockeyManager sharedHockeyManager].delegate && if ([BITHockeyManager sharedHockeyManager].delegate &&
[[BITHockeyManager sharedHockeyManager].delegate respondsToSelector:@selector(userEmailForHockeyManager:componentManager:)]) { [[BITHockeyManager sharedHockeyManager].delegate respondsToSelector:@selector(userEmailForHockeyManager:componentManager:)]) {
useremail = [[BITHockeyManager sharedHockeyManager].delegate useremail = [[BITHockeyManager sharedHockeyManager].delegate
userEmailForHockeyManager:[BITHockeyManager sharedHockeyManager] userEmailForHockeyManager:[BITHockeyManager sharedHockeyManager]
componentManager:self]; componentManager:self] ?: @"";
} }
return useremail; return useremail;