[courier/fetch] detect aborted requests more agressively

This commit is contained in:
spalger 2016-03-24 14:35:46 -07:00
parent 8a4992640b
commit c12f18df27

View file

@ -29,22 +29,26 @@ export default function FetchTheseProvider(Private, Promise) {
}
function fetchWithStrategy(strategy, requests) {
function replaceAbortedRequests() {
requests = requests.map(r => r.aborted ? ABORTED : r);
}
requests = requests.map(function (req) {
return req.aborted ? ABORTED : req;
});
replaceAbortedRequests();
return startRequests(requests)
.then(function () {
replaceAbortedRequests();
return callClient(strategy, requests);
})
.then(function (responses) {
replaceAbortedRequests();
return callResponseHandlers(requests, responses);
})
.then(function (responses) {
replaceAbortedRequests();
return continueIncomplete(strategy, requests, responses, fetchWithStrategy);
})
.then(function (responses) {
replaceAbortedRequests();
return responses.map(function (resp) {
switch (resp) {
case ABORTED: