diff --git a/js/background.js b/js/background.js index 3599d9507..e5798ceb3 100644 --- a/js/background.js +++ b/js/background.js @@ -360,13 +360,18 @@ await storage.put('indexeddb-delete-needed', true); } - const currentStartup = Date.now(); - const lastStartup = storage.get('lastStartup'); - await storage.put('lastStartup', currentStartup); + const now = Date.now(); + const lastHeartbeat = storage.get('lastHeartbeat'); + await storage.put('lastStartup', Date.now()); + const THIRTY_DAYS = 30 * 24 * 60 * 60 * 1000; - if (lastStartup > 0 && currentStartup - lastStartup > THIRTY_DAYS) { + if (lastHeartbeat > 0 && now - lastHeartbeat > THIRTY_DAYS) { await unlinkAndDisconnect(); + } else { + storage.put('lastHeartbeat', Date.now()); + const TWELVE_HOURS = 12 * 60 * 60 * 1000; + setInterval(() => storage.put('lastHeartbeat', Date.now()), TWELVE_HOURS); } const currentVersion = window.getVersion();