about summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorManeraKai <manerakai@protonmail.com>2022-06-11 11:31:49 +0300
committerManeraKai <manerakai@protonmail.com>2022-06-11 11:31:49 +0300
commiteeb01729ea62d4d97fadfed6de6f010fd286b68c (patch)
treece1f75e99acb8d90788f1ab6273590eb92a69ddb
parentMerge branch 'master' of https://github.com/libredirect/libredirect (diff)
downloadlibredirect-eeb01729ea62d4d97fadfed6de6f010fd286b68c.zip
Removing all duplicate cookies before Unifying #323
-rw-r--r--src/assets/javascripts/utils.js12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/assets/javascripts/utils.js b/src/assets/javascripts/utils.js
index 6fb4c113..5f3446ef 100644
--- a/src/assets/javascripts/utils.js
+++ b/src/assets/javascripts/utils.js
@@ -287,7 +287,6 @@ async function testLatency(element, instances) {
 function copyCookie(frontend, targetUrl, urls, name) {
   return new Promise(resolve => {
     browser.storage.local.get('firstPartyIsolate', r => {
-      console.log('r.firstPartyIsolate', r.firstPartyIsolate);
       let query;
       if (!r.firstPartyIsolate) query = { url: protocolHost(targetUrl), name: name }
       else query = { url: protocolHost(targetUrl), name: name, firstPartyDomain: null }
@@ -313,10 +312,13 @@ function copyCookie(frontend, targetUrl, urls, name) {
                     firstPartyDomain: new URL(url).hostname,
                   };
                 }
-                browser.cookies.remove(removeQuery, () => {
-                  browser.cookies.set(setQuery, () => {
-                    browser.storage.local.set({ [`${frontend}_${name}`]: cookie }, () => resolve())
-                  })
+                function removeCookie() {
+                  return new Promise(resolve => browser.cookies.remove(removeQuery, resolve))
+                }
+
+                browser.cookies.set(setQuery, async () => {
+                  while (await removeCookie() != null) continue;
+                  browser.storage.local.set({ [`${frontend}_${name}`]: cookie }, () => resolve())
                 });
               }
               break;