Skip to content

Commit 61b904d

Browse files
authored
Fix crash in FIRInstanceID (#3465)
1 parent 7fdf7c0 commit 61b904d

File tree

2 files changed

+12
-0
lines changed

2 files changed

+12
-0
lines changed

Firebase/InstanceID/FIRIMessageCode.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,8 @@ typedef NS_ENUM(NSInteger, FIRInstanceIDMessageCode) {
4444
kFIRInstanceIDMessageCodeInstanceID014 = 3014,
4545
kFIRInstanceIDMessageCodeInstanceID015 = 3015,
4646
kFIRInstanceIDMessageCodeRefetchingTokenForAPNS = 3016,
47+
kFIRInstanceIDMessageCodeInstanceID017 = 3017,
48+
kFIRInstanceIDMessageCodeInstanceID018 = 3018,
4749
// FIRInstanceIDAuthService.m
4850
kFIRInstanceIDMessageCodeAuthService000 = 5000,
4951
kFIRInstanceIDMessageCodeAuthService001 = 5001,

Firebase/InstanceID/FIRInstanceID.m

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1012,6 +1012,16 @@ - (void)notifyAPNSTokenIsSet:(NSNotification *)notification {
10121012
FIRInstanceID_WEAKIFY(self);
10131013
[self asyncLoadKeyPairWithHandler:^(FIRInstanceIDKeyPair *keyPair, NSError *error) {
10141014
FIRInstanceID_STRONGIFY(self);
1015+
if (self == nil) {
1016+
FIRInstanceIDLoggerError(kFIRInstanceIDMessageCodeInstanceID017,
1017+
@"Instance ID shut down during token reset. Aborting");
1018+
return;
1019+
}
1020+
if (self.apnsTokenData == nil) {
1021+
FIRInstanceIDLoggerError(kFIRInstanceIDMessageCodeInstanceID018,
1022+
@"apnsTokenData was set to nil during token reset. Aborting");
1023+
return;
1024+
}
10151025

10161026
NSMutableDictionary *tokenOptions = [@{
10171027
kFIRInstanceIDTokenOptionsAPNSKey : self.apnsTokenData,

0 commit comments

Comments
 (0)