diff --git a/js/background.js b/js/background.js index ff1ebc5ed..fff647bf2 100644 --- a/js/background.js +++ b/js/background.js @@ -252,7 +252,10 @@ await storage.put('version', currentVersion); if (newVersion) { - if (currentVersion === '1.14.2' || currentVersion === '1.15.0-beta.2') { + if ( + lastVersion && + window.isBeforeVersion(lastVersion, 'v1.15.0-beta.4') + ) { await window.Signal.Logs.deleteAll(); window.restart(); } diff --git a/preload.js b/preload.js index a61052b6b..7f9d5f8a5 100644 --- a/preload.js +++ b/preload.js @@ -4,6 +4,7 @@ console.log('preload'); const electron = require('electron'); +const semver = require('semver'); const { deferredToPromise } = require('./js/modules/deferred_to_promise'); @@ -29,6 +30,18 @@ window.getExpiration = () => config.buildExpiration; window.getNodeVersion = () => config.node_version; window.getHostName = () => config.hostname; +window.isBeforeVersion = (toCheck, baseVersion) => { + try { + return semver.lt(toCheck, baseVersion); + } catch (error) { + console.log( + `isBeforeVersion error: toCheck: ${toCheck}, baseVersion: ${baseVersion}`, + error && error.stack ? error.stack : error + ); + return true; + } +}; + window.wrapDeferred = deferredToPromise; const ipc = electron.ipcRenderer;