Skip to content

Commit 4dddfee

Browse files
committed
[Auth] Add default values for decoding nil properties in UserInfoImpl
1 parent 2176e99 commit 4dddfee

File tree

1 file changed

+8
-9
lines changed

1 file changed

+8
-9
lines changed

FirebaseAuth/Sources/Swift/User/UserInfoImpl.swift

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -88,17 +88,16 @@ class UserInfoImpl: NSObject, UserInfo {
8888
}
8989

9090
required convenience init?(coder: NSCoder) {
91-
guard let providerID = coder.decodeObject(
91+
let providerID = coder.decodeObject(
9292
of: [NSString.self],
9393
forKey: UserInfoImpl.kProviderIDCodingKey
94-
) as? String,
95-
let userID = coder.decodeObject(
96-
of: [NSString.self],
97-
forKey: UserInfoImpl.kUserIDCodingKey
98-
) as? String
99-
else {
100-
return nil
101-
}
94+
) as? String ?? ""
95+
// Not all providers have a corresponding user ID (e.g. phone auth), so
96+
// fall back to an empty string.
97+
let userID = coder.decodeObject(
98+
of: [NSString.self],
99+
forKey: UserInfoImpl.kUserIDCodingKey
100+
) as? String ?? ""
102101
let displayName = coder.decodeObject(
103102
of: [NSString.self],
104103
forKey: UserInfoImpl.kDisplayNameCodingKey

0 commit comments

Comments
 (0)