Make sure that BITHockeyLocalizedString always returns a valid string

This commit is contained in:
Andreas Linde 2013-12-17 16:01:04 +01:00
parent 292d9abc0d
commit 3b5f70d38a

View File

@ -50,11 +50,16 @@ NSBundle *BITHockeyBundle(void) {
} }
NSString *BITHockeyLocalizedString(NSString *stringToken) { NSString *BITHockeyLocalizedString(NSString *stringToken) {
if (!stringToken) return @"";
NSString *appSpecificLocalizationString = NSLocalizedString(stringToken, @""); NSString *appSpecificLocalizationString = NSLocalizedString(stringToken, @"");
if (appSpecificLocalizationString && ![stringToken isEqualToString:appSpecificLocalizationString]) { if (appSpecificLocalizationString && ![stringToken isEqualToString:appSpecificLocalizationString]) {
return appSpecificLocalizationString; return appSpecificLocalizationString;
} else if (BITHockeyBundle()) { } else if (BITHockeyBundle()) {
return NSLocalizedStringFromTableInBundle(stringToken, @"HockeySDK", BITHockeyBundle(), @""); NSString *bundleSpecificLocalizationString = NSLocalizedStringFromTableInBundle(stringToken, @"HockeySDK", BITHockeyBundle(), @"");
if (bundleSpecificLocalizationString)
return bundleSpecificLocalizationString;
return stringToken;
} else { } else {
return stringToken; return stringToken;
} }