From d10841f7505aac6c60d630ffeaebdfe6077dd75b Mon Sep 17 00:00:00 2001 From: Yuki Oya Date: Tue, 9 Jul 2019 17:16:22 +0900 Subject: [PATCH 1/3] Fix UserInfo types on NSError --- .../ios/Classes/FIAObjectTranslator.m | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/packages/in_app_purchase/ios/Classes/FIAObjectTranslator.m b/packages/in_app_purchase/ios/Classes/FIAObjectTranslator.m index c393a46867a8..050c1e2cf29f 100644 --- a/packages/in_app_purchase/ios/Classes/FIAObjectTranslator.m +++ b/packages/in_app_purchase/ios/Classes/FIAObjectTranslator.m @@ -153,10 +153,21 @@ + (NSDictionary *)getMapFromNSError:(NSError *)error { if (!error) { return nil; } + NSMutableDictionary *userInfo = [NSMutableDictionary new]; + for (NSErrorUserInfoKey key in error.userInfo) { + id value = error.userInfo[key]; + if ([value isKindOfClass:[NSError class]]) { + userInfo[key] = [FIAObjectTranslator getMapFromNSError:value]; + } else if ([value isKindOfClass:[NSURL class]]) { + userInfo[key] = [value absoluteString]; + } else { + userInfo[key] = value; + } + } return @{ @"code" : @(error.code), @"domain" : error.domain ?: @"", - @"userInfo" : error.userInfo ?: @{} + @"userInfo" : userInfo }; } From 86e48f46d89a63ecf780d00a5a4ab83aa515d12b Mon Sep 17 00:00:00 2001 From: Yuki Oya Date: Tue, 9 Jul 2019 17:43:49 +0900 Subject: [PATCH 2/3] Fix code format --- packages/in_app_purchase/ios/Classes/FIAObjectTranslator.m | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/packages/in_app_purchase/ios/Classes/FIAObjectTranslator.m b/packages/in_app_purchase/ios/Classes/FIAObjectTranslator.m index 050c1e2cf29f..b64df0538aa6 100644 --- a/packages/in_app_purchase/ios/Classes/FIAObjectTranslator.m +++ b/packages/in_app_purchase/ios/Classes/FIAObjectTranslator.m @@ -164,11 +164,7 @@ + (NSDictionary *)getMapFromNSError:(NSError *)error { userInfo[key] = value; } } - return @{ - @"code" : @(error.code), - @"domain" : error.domain ?: @"", - @"userInfo" : userInfo - }; + return @{@"code" : @(error.code), @"domain" : error.domain ?: @"", @"userInfo" : userInfo}; } @end From ab59ee946ca32f05017a1ecb051ac36e3b1698d0 Mon Sep 17 00:00:00 2001 From: Yuki Oya Date: Wed, 10 Jul 2019 11:38:50 +0900 Subject: [PATCH 3/3] Bump version in pubspec.yaml --- packages/in_app_purchase/CHANGELOG.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/packages/in_app_purchase/CHANGELOG.md b/packages/in_app_purchase/CHANGELOG.md index 32ba5b1147ca..0fb8ee77157d 100644 --- a/packages/in_app_purchase/CHANGELOG.md +++ b/packages/in_app_purchase/CHANGELOG.md @@ -1,3 +1,7 @@ +## 0.2.0+5 + +* iOS: Support unsupported UserInfo value types on NSError. + ## 0.2.0+4 * Fixed code error in `README.md` and adjusted links to work on Pub.