Move tabclosepinned check outside of the loop

This commit is contained in:
Benoit de Chezelles 2021-02-14 15:47:30 +01:00
parent 53dfaa6ecb
commit ec695274c4

View file

@ -2528,10 +2528,13 @@ export async function tabclose(...indexes: string[]) {
ids = [await activeTabId()]
}
const tabclosepinned = (await config.getAsync("tabclosepinned") === "true")
for (let tab_id of ids) {
const tab = (await browser.tabs.query({index: tab_id}))[0]
if (tab.pinned && !tabclosepinned) {
throw new Error(`Tab $tab_id is pinned and tabclosepinned is false, aborting tabclose`)
if (!tabclosepinned) {
// Pinned tabs should not be closed
for (let tab_id of ids) {
const tab = (await browser.tabs.query({index: tab_id}))[0]
if (tab.pinned) {
throw new Error(`Tab $tab_id is pinned and tabclosepinned is false, aborting tabclose`)
}
}
}
return browser.tabs.remove(ids)