|
|
@@ -88,17 +88,16 @@ class UserInfoImpl: NSObject, UserInfo {
|
|
|
}
|
|
|
|
|
|
required convenience init?(coder: NSCoder) {
|
|
|
- guard let providerID = coder.decodeObject(
|
|
|
+ let providerID = coder.decodeObject(
|
|
|
of: [NSString.self],
|
|
|
forKey: UserInfoImpl.kProviderIDCodingKey
|
|
|
- ) as? String,
|
|
|
- let userID = coder.decodeObject(
|
|
|
- of: [NSString.self],
|
|
|
- forKey: UserInfoImpl.kUserIDCodingKey
|
|
|
- ) as? String
|
|
|
- else {
|
|
|
- return nil
|
|
|
- }
|
|
|
+ ) as? String ?? ""
|
|
|
+ // Not all providers have a corresponding user ID (e.g. phone auth), so
|
|
|
+ // fall back to an empty string.
|
|
|
+ let userID = coder.decodeObject(
|
|
|
+ of: [NSString.self],
|
|
|
+ forKey: UserInfoImpl.kUserIDCodingKey
|
|
|
+ ) as? String ?? ""
|
|
|
let displayName = coder.decodeObject(
|
|
|
of: [NSString.self],
|
|
|
forKey: UserInfoImpl.kDisplayNameCodingKey
|