[Shared] Ignores ALTWrappedError NSLocalizedDescription user info value if it == failure + failure reason

This commit is contained in:
Riley Testut
2022-12-12 16:04:53 -06:00
parent ab2aef6b2a
commit 794385a935

View File

@@ -36,11 +36,22 @@
- (NSString *)localizedDescription
{
NSString *wrappedLocalizedDescription = self.wrappedError.userInfo[NSLocalizedDescriptionKey];
if (wrappedLocalizedDescription != nil)
{
NSString *localizedFailure = self.wrappedError.userInfo[NSLocalizedFailureErrorKey];
NSString *fallbackDescription = localizedFailure != nil ? [NSString stringWithFormat:@"%@ %@", localizedFailure, self.wrappedError.localizedFailureReason] : self.wrappedError.localizedFailureReason;
if (![wrappedLocalizedDescription isEqualToString:fallbackDescription])
{
return wrappedLocalizedDescription;
}
}
NSString *localizedFailure = self.userInfo[NSLocalizedFailureErrorKey];
if (localizedFailure != nil)
{
NSString *wrappedLocalizedDescription = self.wrappedError.userInfo[NSLocalizedDescriptionKey];
NSString *localizedFailureReason = wrappedLocalizedDescription ?: self.wrappedError.localizedFailureReason ?: self.wrappedError.localizedDescription;
NSString *localizedFailureReason = self.wrappedError.localizedFailureReason ?: self.wrappedError.localizedDescription;
NSString *localizedDescription = [NSString stringWithFormat:@"%@ %@", localizedFailure, localizedFailureReason];
return localizedDescription;