From 980d3f5b2b866d7aafef038bfa015f3e6f1048ca Mon Sep 17 00:00:00 2001 From: Sebastian Date: Thu, 28 Apr 2022 16:21:06 -0300 Subject: do not save current header before being added into the browser listener --- packages/taler-wallet-webextension/src/platform/chrome.ts | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) (limited to 'packages/taler-wallet-webextension/src') diff --git a/packages/taler-wallet-webextension/src/platform/chrome.ts b/packages/taler-wallet-webextension/src/platform/chrome.ts index e4ebfbae5..be7dd40f9 100644 --- a/packages/taler-wallet-webextension/src/platform/chrome.ts +++ b/packages/taler-wallet-webextension/src/platform/chrome.ts @@ -326,7 +326,6 @@ function registerTalerHeaderListener(callback: (tabId: number, url: string) => v return; } const prevHeaderListener = currentHeaderListener; - currentHeaderListener = headerListener; getPermissionsApi().containsHostPermissions().then(result => { //if there is a handler already, remove it @@ -338,11 +337,15 @@ function registerTalerHeaderListener(callback: (tabId: number, url: string) => v } //if the result was positive, add the headerListener if (result) { - chrome?.webRequest?.onHeadersReceived?.addListener( - headerListener, - { urls: [""] }, - ["responseHeaders"], - ); + const listener: chrome.webRequest.WebResponseHeadersEvent | undefined = chrome?.webRequest?.onHeadersReceived; + if (listener) { + listener.addListener( + headerListener, + { urls: [""] }, + ["responseHeaders"], + ); + currentHeaderListener = headerListener; + } } //notify the browser about this change, this operation is expensive chrome?.webRequest?.handlerBehaviorChanged(() => { -- cgit v1.2.3