Skip to content

Commit 98be7b2

Browse files
committed
fix: prevent setDeviceToken to resolve and reject
1 parent 115af55 commit 98be7b2

File tree

1 file changed

+9
-3
lines changed

1 file changed

+9
-3
lines changed

ios/IntercomModule.m

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -82,12 +82,18 @@ - (NSData *)dataFromHexString:(NSString *)string {
8282
resolver:(RCTPromiseResolveBlock)resolve
8383
rejecter:(RCTPromiseRejectBlock)reject) {
8484
@try {
85+
__block BOOL isSettled = NO;
8586
NSData *data = [self dataFromHexString:token];
8687
[Intercom setDeviceToken:data failure:^(NSError * _Nullable error) {
87-
reject(SEND_TOKEN_TO_INTERCOM, @"Error in sendTokenToIntercom", error);
88+
if (!isSettled) {
89+
isSettled = YES;
90+
reject(SEND_TOKEN_TO_INTERCOM, @"Error in sendTokenToIntercom", error);
91+
}
8892
}];
89-
90-
resolve(@(YES));
93+
if (!isSettled) {
94+
isSettled = YES;
95+
resolve(@(YES));
96+
}
9197
} @catch (NSException *exception) {
9298
reject(SEND_TOKEN_TO_INTERCOM, @"Error in sendTokenToIntercom", [self exceptionToError:exception :SEND_TOKEN_TO_INTERCOM :@"sendTokenToIntercom"]);
9399
}

0 commit comments

Comments
 (0)