diff --git a/core/utils.js b/core/utils.js index 9e19326..2f71cc6 100644 --- a/core/utils.js +++ b/core/utils.js @@ -404,7 +404,7 @@ const getURLProtocol = sURL => { }; //Обёртывание промиса в таймаут исполнения -const wrapPromiseTimeout = (timeout, promise) => { +const wrapPromiseTimeout = (timeout, promise, promiseCancellable = true) => { if (!timeout) return promise; let timeoutPid; const timeoutPromise = new Promise((resolve, reject) => { @@ -414,7 +414,7 @@ const wrapPromiseTimeout = (timeout, promise) => { timeoutPid = setTimeout(() => reject(e), timeout); }); return Promise.race([promise, timeoutPromise]).finally(() => { - if (promise.promise().isPending()) promise.cancel(); + if (promiseCancellable && promise.promise().isPending()) promise.cancel(); if (timeoutPid) clearTimeout(timeoutPid); }); };