Skip to content
Merged
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 5 additions & 1 deletion FirebaseAuth/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,11 @@
`Auth.currentUser` API. This resolves some Firebase 11 issues where the
current user is unexpectedly `nil` at startup.
- [fixed] Restore Firebase 10 decoding behavior to prevent user provider data
from being decoded as `nil`. (#14011)
from being always decoded as `nil` when reading Firebase 10 data. (#14011)
- [fixed] Restore Firebase 10 decoding behavior to prevent user provider data
from being decoded as `nil` when a user has multiple linked providers. Note
that this fix will not be in the 11.6.0 zip and Carthage distributions, but
will be included from 11.6.0 onwards. (#14011)

# 11.5.0
- [fixed] Restore pre-Firebase 11 decoding behavior to prevent users getting
Expand Down
17 changes: 8 additions & 9 deletions FirebaseAuth/Sources/Swift/User/UserInfoImpl.swift
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
Loading