Skip to content
This repository was archived by the owner on Mar 16, 2019. It is now read-only.

Commit 0b6beae

Browse files
committed
#268 Add back off to request.cancel
1 parent cafb7f2 commit 0b6beae

File tree

2 files changed

+8
-1
lines changed

2 files changed

+8
-1
lines changed

index.js

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -370,7 +370,11 @@ function fetch(...args:any):Promise {
370370
subscription.remove()
371371
subscriptionUpload.remove()
372372
stateEvent.remove()
373-
RNFetchBlob.cancelRequest(taskId, fn)
373+
// set a small backoff for insure the task already added to native task
374+
// table before we cancel it.
375+
setTimeout(() => {
376+
RNFetchBlob.cancelRequest(taskId, fn)
377+
}, 14)
374378
}
375379
promise.taskId = taskId
376380

ios/RNFetchBlobNetwork.m

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -653,7 +653,10 @@ + (void) cancelRequest:(NSString *)taskId
653653
{
654654
NSURLSessionDataTask * task = [taskTable objectForKey:taskId];
655655
if(task != nil && task.state == NSURLSessionTaskStateRunning)
656+
{
656657
[task cancel];
658+
[taskTable removeObjectForKey:taskId];
659+
}
657660
}
658661

659662

0 commit comments

Comments
 (0)