[addon] fixes AD exception handling

This commit is contained in:
TheBeastLT
2020-12-15 18:06:24 +01:00
parent 604ee5cbfb
commit 1067720304
2 changed files with 9 additions and 7 deletions

View File

@@ -81,7 +81,7 @@ async function resolve({ ip, apiKey, infoHash, cachedEntryInfo, fileIndex }) {
console.log(`Access denied to AllDebrid ${infoHash} [${fileIndex}]`); console.log(`Access denied to AllDebrid ${infoHash} [${fileIndex}]`);
return StaticResponse.FAILED_ACCESS; return StaticResponse.FAILED_ACCESS;
} }
return Promise.reject(`Failed AllDebrid adding torrent ${error}`); return Promise.reject(`Failed AllDebrid adding torrent ${JSON.stringify(error)}`);
}); });
} }
@@ -102,11 +102,7 @@ async function _resolve(AD, infoHash, cachedEntryInfo, fileIndex) {
async function _createOrFindTorrent(AD, infoHash) { async function _createOrFindTorrent(AD, infoHash) {
return _findTorrent(AD, infoHash) return _findTorrent(AD, infoHash)
.catch(() => _createTorrent(AD, infoHash)) .catch(() => _createTorrent(AD, infoHash));
.catch(error => {
console.warn('Failed AllDebrid torrent retrieval', error);
return error;
});
} }
async function _retryCreateTorrent(AD, infoHash, encodedFileName, fileIndex) { async function _retryCreateTorrent(AD, infoHash, encodedFileName, fileIndex) {

View File

@@ -82,7 +82,13 @@ async function getCatalog(apiKey, offset = 0) {
.then(nextTorrents => torrents.concat(nextTorrents)) .then(nextTorrents => torrents.concat(nextTorrents))
.catch(() => torrents) .catch(() => torrents)
: torrents) : torrents)
.then(torrents => torrents && torrents.length ? torrents : []) .then(torrents => {
if (Array.isArray(torrents)) {
return torrents;
}
console.log(`Received non array response for RealDebrid catalog: `, torrents)
return [];
})
.then(torrents => torrents .then(torrents => torrents
.filter(torrent => statusReady(torrent.status)) .filter(torrent => statusReady(torrent.status))
.map(torrent => ({ .map(torrent => ({