[Auth] Use native Swift types in Auth backend types #13658
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Follow-up to #13647 to further attempt to fix #13650.
The crash reports from #13650 show
swift_unknownObjectRetain
as the last frame in the terminating thread.Using a symbolic breakpoint, I verified that
swift_unknownObjectRetain
gets called to get therpcIssuer
used below:firebase-ios-sdk/FirebaseAuth/Sources/Swift/Backend/AuthBackend.swift
Lines 274 to 275 in b5e2c18
Stepping through the assembly from
swift_unknownObjectRetain
, theobjc_retain
is returned from its source.When I removed the
NSObject
conformances and debugged again,swift_unknownObjectRetain
is no longer called. I thought this was pretty interesting and will guarantee that should #13650 reappear, the report will at least look different as the object in question will have its memory managed differently as a native Swift type.