From 7e706354f99229aceb2f604bb37764eed28ffd98 Mon Sep 17 00:00:00 2001 From: Abe Jellinek Date: Mon, 28 Jul 2025 12:09:56 -0400 Subject: [PATCH] Don't try to reject last feed item when FeedReader terminates As the comment says, this hasn't been useful (and isn't used anywhere), and I honestly don't understand how the test ever passed - process() would've resolved all the feed item promises already. Fixes #5412 --- chrome/content/zotero/xpcom/feedReader.js | 11 ----------- test/tests/feedReaderTest.js | 8 -------- 2 files changed, 19 deletions(-) diff --git a/chrome/content/zotero/xpcom/feedReader.js b/chrome/content/zotero/xpcom/feedReader.js index 5f484d2f67..5e4acc4b75 100644 --- a/chrome/content/zotero/xpcom/feedReader.js +++ b/chrome/content/zotero/xpcom/feedReader.js @@ -221,17 +221,6 @@ Zotero.FeedReader.prototype.terminate = function (status) { // Reject feed promise if not resolved yet this._feedProcessed.reject(new Error(status)); - - // Reject feed item promise if not resolved yet - let lastItem = this._feedItems[this._feedItems.length - 1]; - // It seemed like a good idea to reject the last item but - // it's not really been useful yet, aside from bluebird - // throwing errors about unhandled rejections in tests - // so we suppress them here. TODO: We should probably - // rethink whether this code makes sense and make it better. - // FIXME: fx140: We can no longer "handle" the rejection here - let er = new Error(status); - lastItem.reject(er); }; Zotero.defineProperty(Zotero.FeedReader.prototype, 'feedProperties', { diff --git a/test/tests/feedReaderTest.js b/test/tests/feedReaderTest.js index 48999e0ade..cd56d631d0 100644 --- a/test/tests/feedReaderTest.js +++ b/test/tests/feedReaderTest.js @@ -86,14 +86,6 @@ describe("Zotero.FeedReader", function () { e = await getPromiseError(fr._feedItems[fr._feedItems.length-1].promise); assert.ok(e); }); - - it('should reject last feed item if feed processed', async function () { - let fr = new Zotero.FeedReader(rssFeedURL); - await fr.process(); - fr.terminate("test"); - let e = await getPromiseError(fr._feedItems[fr._feedItems.length-1].promise); - assert.ok(e); - }); }); describe('#feedProperties', function () {